作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我一直在做一个我继承的 angular 项目,我无法联系到原作者。有一个我不确定的 watch 表达式,我想知道是否有人可以帮助我理解代码:
$scope.$watch(calculator.value, function(newVal, oldVal) {
if(newVal !== oldVal) {
i = newVal;
updateCalculation();
}
});
令我困惑的是这行代码:newVal !== oldVal
。知道为什么需要这样一张支票吗?
最佳答案
作用域的$watch
方法将始终至少执行回调一次。第一次执行时,新旧值相同。
$scope.$watch(calculator.value, function(newVal, oldVal) {
if(newVal === oldVal) {
console.log('First time watcher is executed');
}
if(newVal !== oldVal) {
console.log('Watcher called because values changed.');
}
});
您提供的示例表明它只会在值更改时执行 updateCalculations()
。这不是第一次观察者被调用。
关于javascript - Angular $scope.$watch newVal !== oldVal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33105362/
我一直在做一个我继承的 angular 项目,我无法联系到原作者。有一个我不确定的 watch 表达式,我想知道是否有人可以帮助我理解代码: $scope.$watch(calculator.valu
我定义了一个模态窗口,用户在其中选择与之前选择的值不同的值。模态窗口应该在关闭后保留该值。我尝试使用 $scope.$watch 方法来实现此目的,但它似乎不起作用。我定义了下面的 Controlle
我正在解决必须找到列表中最长的字符串并用该字符串替换所有其他列表项的问题: The longest string in the list Inside the given method you sho
我是一名优秀的程序员,十分优秀!