我想写一个指令,提供一个自定义按钮。该按钮内的文本通过两个属性提供给指令。为什么这个属性没有绑定到我的指令范围?
按钮模板:
<button>
<div>{{digit}}</div>
<div>{{letters}}</div>
</button>
该指令调用:
<ws-dial digit="2" letters="ABC"></ws-dial>
该指令的定义是这样的:
angular.module ('MyApp').directive ('wsDial', function() {
return {
restrict: 'E',
templateUrl: 'ws-dial.html',
scope: {
digit: '=',
letters: '='
}
});
然而,只有digit
属性的内容用过的; letters
是空的,就好像它在我的指令中是未定义的。
我在Codepen here上做了一个例子。
我在做什么错?谢谢。
妈的,这是一个愚蠢的错误;谢谢。 – piwi
不是,不是愚蠢的,它实际上是一个非常常见的错误,绑定的工作方式比第一次看到的要复杂得多。请注意,使用@是单向绑定,如果该指令不应该与绑定值混淆,则可能更安全 – masimplo