示例
$scope.$watch('data', function(){});
该函数在数据
发生变化时启动,但如果我想知道是什么函数导致了变化。
最佳答案
您无法直接询问变量“data”来检查更改它的方法,而且我不知道 $watch 具有“origin”样式属性。
因此,您需要自己跟踪这一点,因此我建议使用一个中间方法来更改实际数据,所有其他方法都调用此方法。
然后,该方法可以存储源,然后触发 watch 。 但如果这样做你还需要 watch 吗?
或者,您可以设置一个表示原点的标志。
您还可以在监视语句中使用评估,如 interesting article 中所述。作者:Cameron Boehmer,这样您只有在满足某些其他条件(例如标志)时才能触发 watch 。
关于angularjs - 我如何获取有关谁更改了我在 watch 中设置的变量的信息( Angular ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32090489/