gpt4 book ai didi

javascript - angularjs:$watch 两个变量,如果只有一个变量发生变化,则执行某些操作

转载 作者:行者123 更新时间:2023-11-29 18:17:36 25 4
gpt4 key购买 nike

我有一种情况,我想监控一个特定的变量。

$scope.$watch('action', function() { /* do something */ }

但是,我只想在 $scope.id 没有改变的情况下做一些事情(如果 $scope.action 改变,则 $scope 可能.id 也改变了。)

我能想到的唯一解决办法是

$scope.$watch('action', function() { 
if(idHasChanhed === false){
/* do something */
}
idHasChanged = false;
});
$scope.$watch('id', function() { idHasChanged = true }

但是,我想知道angular是否有比这更好的解决方案,我不知道这个解决方案是否总是有效($watches的执行顺序是随机的!?)

最佳答案

我的解决方案:

$scope.$watch('[action,id]', function() { 
// called when action or id changed
});

信息:字符串连接 action + id 将失败。

关于javascript - angularjs:$watch 两个变量,如果只有一个变量发生变化,则执行某些操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21679610/

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