我有一个使用ng-switchery的复选框,如下所示:
<input type="checkbox" class="pull-right js-switch" ui-switch="{color:'#1AB394'}" ng-model="activeSwitch"/>在处理这个问题的控制器中,我使用$http获取一些数据:
$http.get('/clients/' + $stateParams.id)
.success(function (client) {
$scope.client = client;
$scope.activeSwitch = $scope.client.active;
});我希望回调也能成功地设置复选框的状态,但它没有,我试着调用$scope.$apply(),但这并没有真正改变任何事情,也没有在checkbox上添加ng-checked指令。
发布于 2015-02-05 23:29:25
我要说的是,这就是所有的代码。仅此而已。所以这就是解决方案:
显然,这不是一个角度问题,而是ng-switchery只是不希望在activeSwitch更改时正确地重新加载,因此,通过添加ng-if,当activeSwitch存在时,它将被强制仅在DOM上,例如当http执行其回调时
<input ng-if="activeSwitch!==undefined" type="checkbox" class="pull-right js-switch" ui-switch="{color:'#1AB394'}" ng-model="activeSwitch"/>这个解决方案是可行的。感谢你所有“建设性”的回答
https://stackoverflow.com/questions/28323592
复制相似问题