Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在自定义属性内生成AngularJS渲染变量?_Javascript_Angularjs - Fatal编程技术网

Javascript 如何在自定义属性内生成AngularJS渲染变量?

Javascript 如何在自定义属性内生成AngularJS渲染变量?,javascript,angularjs,Javascript,Angularjs,在AngularJS中,似乎在{{value}}内部执行类似value=“”或class=“”的操作很好,但执行以下操作: $scope.bar=“1234” 使字符串{{bar}}传递给myDirective,而不是bar的字符串值 如何强制传递bar的值而不是{{bar}?如果在指令中未指定隔离范围,则不需要传入范围变量-指令将只获取继承的范围,您可以引用: scope.bar 如果要隔离指令范围并将变量作为属性传入,则需要在指令初始化中执行此操作 scope: { foo:'=loc

在AngularJS中,似乎在
{{value}}
内部执行类似
value=“”
class=“”
的操作很好,但执行以下操作:

$scope.bar=“1234”


使字符串
{{bar}}
传递给
myDirective
,而不是
bar
的字符串值


如何强制传递
bar
的值而不是
{{bar}

如果在指令中未指定隔离范围,则不需要传入范围变量-指令将只获取继承的范围,您可以引用:

scope.bar
如果要隔离指令范围并将变量作为属性传入,则需要在指令初始化中执行此操作

scope: { foo:'=localFoo' }

然后在指令中可以引用'localFoo'作为{{bar}的计算结果

只要使用
考虑一下@sza,我就必须在指令中创建一个隔离作用域,对吗?所以这不是一个选项。@BenjaminGruenbaum我熟悉文档如果我只是从指令中执行
scope.bar
,那么指令将与变量名
bar
紧密耦合。如果我想将变量更改为其他变量,则该指令将不起作用。我只是希望能够将字符串的值传递给指令,然后必须隔离指令范围并将其作为属性传递。在指令中使用scope对象,并对其进行双向绑定。不,因为在某些情况下,我不会向指令传递变量,我只会输入一个字符串。在其他情况下,我将有一个变量。因此,在这两种情况下都能工作的唯一方法是传入变量的字符串值。您可以在首先查看的指令上有一个“override”属性,如果已填充该属性,则通过将其与“&”绑定来使用该属性的字符串值。否则,您将使用双向绑定。我将如何做到这一点?范围变量在控制器和链接函数之外实例化(属性对其可用)?
scope: { foo:'=localFoo' }