【发布时间】:2025-12-27 20:10:06
【问题描述】:
我不明白为什么或为什么不使用 angularjs 隔离作用域或不使用 $watch?
例如:
app.directive('fooDirective', function () {
return {
scope: {
readonly: '=' or '@' or '&'
},
link: function (scope, element, attrs) {
// should I use $watch here or not ?
scope.$watch('readonly', function () {
// do I require to do so???
});
}
};
});
【问题讨论】:
-
这取决于你想做什么。
-
这有关系吗?我想知道它是否针对该属性发布?我的意思是,如果在范围隔离之后我会有两个或一个 $watches?
-
通过使用
=激活数据绑定,而@是只读的,最好用于字符串 -
在你的情况下,你有一个
readonly的观察者 - 你创建的那个 - 和一个隐含的观察者readonly绑定的任何表达式。 -
为什么隐含 $watch 我可以禁用它吗?
标签: angularjs angularjs-directive isolate-scope