我想在局部变量的值更改时调用一个函数。
我使用while循环尝试了此代码,但被锁定在循环中。
var titleChanged = false;
$scope.$watch('title',function(newValue, oldValue) {
if (newValue !== oldValue) {
titleChanged = true;
}
});
while (true) {
$timeout(checkForChangeAndSave, 3000);
};
function checkForChangeAndSave() {
if(titleChanged) {
updateNote();
titleChanged = false;
}
}
function updateNote() {
notesService.update($stateParams.id, {title: $scope.title});
notesService.getAll();
};
最佳答案
我建议您使用角度的间隔服务。
使用while实施它的方式将在超时执行期间阻止您的代码。
看看the angular interval documention。