我已经知道你可以在指令中使用attr.$observe
来观察属性是否改变。
是否有相当于观察元素内的文本?
<div my-directive ng-bind="myText || 'Watch me!!!'">Watch me!!!</div>
在上面的例子中,我想看文本“看我!!!”。我更喜欢这样做,而不是$watch
由于范围问题,绑定到指令的内容。
我已经知道你可以在指令中使用attr.$observe
来观察属性是否改变。
是否有相当于观察元素内的文本?
<div my-directive ng-bind="myText || 'Watch me!!!'">Watch me!!!</div>
在上面的例子中,我想看文本“看我!!!”。我更喜欢这样做,而不是$watch
由于范围问题,绑定到指令的内容。
观察DOM的变化是昂贵,也没有建立在Angular内部这样做。观察变化的范围是正确的方法。
如果您在确定方案时遇到了问题,那么也许在我组建更多的情况下,这也是我们可以提供的帮助。
很可能会看到DOM的变化,这里有一个例子:
http://jsfiddle.net/kihu/t7zr71ma/5/
关键是要通过你想要观看一个函数返回的事物,如:
scope.$watch(function() {
return element.text();
}, handleChange)
但我认为@Enzey是对的,你应该避免观看DOM,而应该从角度范围绑定数据并观看它。
不,只是我懒惰。回想起来,你是完全正确的,而且我已经重构过,以便观察范围更简单。 – jdotjdot 2014-11-26 05:46:05