从我的指令
看一下这段代码片段return {
controller: 'MyController',
controllerAs: 'vm',
scope: {},
bindToController: {
name: '=',
id: '='
},
// ....
然后在我看来,我可以使用:
<div>{{ vm.name }}</div>
我的问题是:为什么我们首先需要设置scope: {}
?如果我删除,这代码中断。
注意:如果您想知道为什么我在bindToController
而不是scope
拥有我的绑定,我从本文(http://toddmotto.com/no-scope-soup-bind-to-controller-angularjs/)中得到了这个想法。
答案 0 :(得分:1)
默认情况下,除非明确设置,否则指令不会创建自己的范围。这可以帮助您更多What is the difference between scope:{} and scope:true inside directive?。