我是AngularJS的新手,在进行Codecademy课程时我遇到了困难。我试图使用以下语法重复一个指令。
<div class="card" ng-repeat="app in apps">
<app-info info="{{ app }}"></app-info>
</div>
我玩了一下,发现我需要移除花括号。
<div class="card" ng-repeat="app in apps">
<app-info info="app"></app-info>
</div>
但如果我没有使用指令,我想我会访问这样的信息。 AngularJS documentation.
<div class="card" ng-repeat="app in apps">
{{ app }}
</div>
有人可以解释为什么我不需要花括号来帮助我更好地理解AungularJS。谢谢!
答案 0 :(得分:1)
在该特定情况下,使用{{data}}
评估该变量的值,但是当您在包含名为info="app"
的{{1}}变量的其他指令中执行scope
时,您正在做的是将info
指令的info
范围变量绑定到控制器(或父指令) app-info
范围变量。
答案 1 :(得分:1)
插值符号{{
}}
的使用取决于指令的实现。
某些指令(如ng-click='expression'
或ng-if='expression'
)采用不带双重格式的表达式。
而ng-src='{{expression}}'
等其他指令接受插值符号。
这完全取决于指令的设置方式。
插值的基本用法是执行表达式并用表达式的返回值(字符串值)替换内容。
当您了解有关指令的更多信息时,您将学习如何使用@,=,&
将参数传递给指令。这些参数可以是简单的字符串值(在这种情况下可以使用插值),也可以是对象或函数。