我以为我已经掌握了使用自定义指令的孤立作用域,然后遇到了这个问题,我已经为此苦苦挣扎了 3 个小时:
一旦为指令创建了隔离范围,我认为您可以在or函数中设置任何范围数据(在本例中greeting
) 。但是HTML 中的引用不起作用,即使它在通过控制台检查时显示在范围内?controller
link
{{greeting}}
greeting
我认为新的隔离范围将分配给指令myDir
,并且在该范围上定义的任何内容都可以在 .html 的 HTML 内容中访问<my-dir>
。显然,我的理解有差距。
请问有什么想法吗?
Plunker:这里
HTML:
<my-dir>
Greeting: {{greeting}}
</my-dir>
JS:
var app = angular.module('myApp', []);
app.directive('myDir', function() {
return {
restrict: 'EA',
scope: {},
controller: ['$scope', function ($scope) {
$scope.greeting = 'Hello';
//this.greeting = 'Hello';
}],
link: function(scope, element, attrs){
//scope.greeting = 'Hello';
}
};
})