gpt4 book ai didi

javascript - Angular $scope.$watch newVal !== oldVal

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:32:14 26 4
gpt4 key购买 nike

我一直在做一个我继承的 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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com