link中的scope到底是哪个scope
link函数中注入的scope是指令的scope还是controller的scope或者是module的scope?如果说是指令的scope,为什么又能调controller的属性和函数?
link函数中注入的scope是指令的scope还是controller的scope或者是module的scope?如果说是指令的scope,为什么又能调controller的属性和函数?
2016-07-02
这个问题有点说来话长了,首先说下前提,我个人理解,在ng中,一个ng-app有一个$rootScope,每一个controller有自己的$scope,同时如果controller嵌套的话,$scope也会有parent的概念。(js的原型继承)
这样的话,指令中的scope是谁的scope就取决于它是在哪个controller中调用的了。比如你图中的例子,它是在MyCtrl这个controller中被实例化的,那么它的scope就是MyCtrl的scope。
另外我没有测试过,感觉,如果是在MyCtrl中再嵌套一个controller叫MyCtrl2,在这个controller中实例化这个指令,基于原型继承,应该也是调用MyCtrl中的loadData。
举报