我有一个控制器,它的计数器会不时变化。
该计数器与指令的属性绑定,并在该指令的链接函数内部读取。
每当attr值更改时,如何让指令运行函数?
谢谢。
里面的相应的link
功能:(假设你的属性称为counter
你的范围变量是:scope
)
scope.$watch(attrs.counter, function (newTime) {
//do something with the new Time
});
其他方式,肯定是更有效的方式:
在指令内部,将scope
属性设置如下(它将被隔离):
scope: { counter: '@'}
counter
只要link
调用该函数,就会自动观察到提供当前值的。
'@'
比'='
这里更好,因为我想您不会在指令中将计数器设置为新值,这意味着您只需读取它即可。实际上,=
它对于双向数据绑定更有用,但是您可能不需要它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句