Angularjs 带true的角度表-更改了哪个属性
我有一个带有deepwatch的对象(在$watch的第三个参数中为true)。Angularjs 带true的角度表-更改了哪个属性,angularjs,Angularjs,我有一个带有deepwatch的对象(在$watch的第三个参数中为true)。 当手表被触发时,我想知道哪个属性被改变了。我得到的只是新旧价值观。有没有一个好的方法来知道发生了什么变化?我不想比较新旧对象并搜索更改的属性。这不是最干净的方法,但解决这一问题的非纯AngularJS方法是在对象上使用Object.observe(),而不是$watch,因为它传递更改属性的名称 Object.observe()的外部链接 另一种方法是重写对象上的getter和setter,以便它们创建
当手表被触发时,我想知道哪个属性被改变了。我得到的只是新旧价值观。有没有一个好的方法来知道发生了什么变化?我不想比较新旧对象并搜索更改的属性。这不是最干净的方法,但解决这一问题的非纯AngularJS方法是在对象上使用
Object.observe()
,而不是$watch,因为它传递更改属性的名称
Object.observe()的外部链接
另一种方法是重写对象上的getter和setter,以便它们创建存储在对象内部的已更改属性列表。不确定这项技术的具体实现,而且也没有那么干净。这就是它的工作原理。如果您真的不想编写代码来解决这个问题,您可以单独查看属性。或者尝试以下操作: