3

例子

$scope.$watch('data', function(){});

函数何时开始data变化,但如果我想知道是什么函数导致了变化。

4

1 回答 1

1

您不能直接询问变量 'data' 来检查是什么方法改变了它,我不知道 $watch 有一个 'origin' 样式属性。

所以你需要自己跟踪这个,所以我建议有一个改变实际数据的中间方法,所有其他人都称之为。

然后,所述方法可以存储源,然后触发手表。但如果这样做,你还需要手表吗?

或者,您可以设置一个表示原点的标志。

您还可以在您的手表语句中使用评估,如Cameron Boehmer 的一篇有趣文章中所述,这样您只能在满足某些其他条件(如标志)时触发您的手表。

于 2015-08-19T09:01:48.140 回答