我有一个对象,我想在一个指令内观察.
该指令具有隔离范围,对象来自父控制器.
DOM:
<div hello-directive obj-to-track="{{myObj}}"></div>
指令JS:
scope:{
objToTrack:'@'
},
link:function(scope,element,attrs){
scope.$watch(function(newValue){
//Inside here, newValue is a JSON string
//So is scope.objToTrack
});
}
Run Code Online (Sandbox Code Playgroud)
无论如何,除了JSON.parse()
谢谢之外,还有来自父控制器的实际对象.
只需使用"="绑定:
scope:{
objToTrack: "="
}
Run Code Online (Sandbox Code Playgroud)
像往常一样观看:
scope.$watch("objToTrack", function(newval, oldval) {
...
});
Run Code Online (Sandbox Code Playgroud)
用它作为:
<div hello-directive obj-to-track="myObj"></div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5711 次 |
| 最近记录: |