我正在创建大量的指令,并且所有指令都将包含将在链接函数内初始化的动态范围变量, 例如:
// link: function(scope, ele, attr){ scope.key = scope.somevar + 'something_else'; scope[scope.key] = 'the_value'; } //
我想通过指令访问指令模板中的值scope.key
.
something
目前我只通过函数调用看到它是可行的:
HTML
something
JS
scope.scope = function(key) { return scope[key]; }
但问题是我需要将其复制到所有指令中.
我考虑的另一个选项是将getter函数分配给$rootScope
全局可访问但是如何将其绑定到或传入当前指令范围.(如果可能的话).
对此有什么好处?
Angular模板this
关键字内部指向当前评估上下文,即当前范围.这意味着您可以通过在this
对象上使用括号表示法来实现您的目标:
something