范围变量的任何更改的事件

时间:2015-01-05 15:10:23

标签: angularjs

我想要一个对话框,要求保存当前的更改。为此,我在AngularJS中搜索一个事件,触发更改任何范围变量。

按照我的逻辑,我将通过在每个控件上创建事件来实现这一点,并更新变量以说“修改”。否则将具有默认值。

<小时/> 还有其他方法吗?由于我的逻辑需要在每个控件上都有一个事件。

2 个答案:

答案 0 :(得分:1)

如果你使用form directive,这很简单。如果任何属性已更改,则myForm.$dirty的值将为true。您甚至可以使用myForm.myField.$dirty检查单个字段。

如果你没有使用表格,你应该考虑一下你试图完成的事情。我最喜欢的角度功能之一,因为它使验证等等变得轻而易举!

参考:angular docs

答案 1 :(得分:0)

看看$scope.$watch(...) on the Angular docs,我们就$watch的工作方式进行了很好的讨论here on another Stack Overflow question

特定的范围元素发生变化时,您至少应该能够触发警报。如果您使用的是表单,那么上面的$dirty方法绝对是一个很好的方法。