在AngularJS中禁用和启用监视
发布时间:2020-12-17 07:10:56 所属栏目:安全 来源:网络整理
导读:我有一个数据对象的监视: $scope.$watch('data',function(after,before) { $scope.saveData();},true); 我还有一个模态弹出来编辑上面的一些数据对象的属性.但是,如果我通过此模式编辑任何属性,但决定“取消”,它仍会保存已编辑的属性. 当模态弹出时,有没有
我有一个数据对象的监视:
$scope.$watch('data',function(after,before) { $scope.saveData(); },true); 我还有一个模态弹出来编辑上面的一些数据对象的属性.但是,如果我通过此模式编辑任何属性,但决定“取消”,它仍会保存已编辑的属性. 当模态弹出时,有没有办法禁用该手表? 解决方法
$watch返回一个函数.如果你打电话给你,你会删除你的观察者
angular docs,向下滚动至$watch并查看返回值 var myWatcher = $scope.$watch('data',before) { $scope.saveData(); },true); myWatcher(); // removes your watcher 编辑: var modalInstance = $modal.open({ templateUrl: 'myModalContent.html',controller: ModalInstanceCtrl,size: size,resolve: { items: function () { return { data: data myWatcher: myWatcher // you can call items.myWatcher() in your modal controller }; } } }); 但我不知道重新启用观察者的简单方法(函数调用或类似方法).你将不得不再次设置它. modalInstance.result.then(function (data) { $scope.data = data; },function () { // callback for cancel,here you could re-apply the watcher }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |