以下是AngularJS片段的一些示例:
<image ng-href="{{mainCtrl.href}}" xlink:href="" width="383" height="108" />
<div ng-show="mainCtrl.show">
<svg xmlns="http://www.w3.org/2000/svg" baseProfile="full" version="1.1" ng-attr-width="{{mainCtrl.svg.width}}" height="400">
<svg xmlns="http://www.w3.org/2000/svg" baseProfile="full" version="1.1" ng-style="mainCtrl.style">
对于某些AngualrJS属性指令,我需要使用双重curlies来引用控制器中的模型数据,而对于其他人,我必须不使用双重curlies。
当我遇到一个新的AngularJS指令时,我怎么知道我应该用它来指向控制器上的数据?是否有一些理由说明哪些指令需要双重条件并且需要它们缺席?
答案 0 :(得分:2)
双花括号告诉angular插入表达式,即创建一个字符串。因此,您不会将它们用于不期望文字字符串(如ngClick
)的指令(或属性)。文字字符串表示&#34;按原样使用该值&#34;而不是&#34;解释价值&#34; (=表达)。
每当您可以使用花括号时,Angular文档将参数分类为template
。我可以指除了或代替文字字符串!因此,您可以撰写ng-href="http://google.com"
或ng-href="{{search}}"
,搜索结果为'http://google.com'
或ng-href="http://{{search}}"
,搜索结果为'google.com'
。结果总是一样的。
ng-attr-width
和ng-href
等指令只是他们&#34;真实&#34;的替代品。同行,width
和href
。他们只是在DOM中设置该属性的值。为简单起见,他们需要一个文字字符串和支持模板。