角$ scope。$ watch newVal!== oldVal

235

我一直在从事继承的有角度的项目,但无法与原始作者联系。有一个我不确定的手表表达式,我想知道是否有人可以帮助我理解代码:

$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()在值更改后才会执行观察者不是第一次被调用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章