为什么&n价值'不适用于'价值'正在评估Angular Expressions。即markup {{expression}}?

时间:2017-02-02 10:56:50

标签: angularjs

Enter the Dollar Amount  <br>
1--<input type="text" ng-model="dollar1"  ></input> <br>
2--<input type="text" ng-model="dollar2" ></input> <br>
3--Not Working-<input type="text"  ng-value="{{dollar1 * dollar2}}" ></input>    <br>
4--Working<input type="text"  value="{{dollar1 * dollar2}}" ></input>  <br>
5--Working<input type="text"  ng-value="dollar1 * dollar2" ></input> <br>

虽然如果我们使用没有花括号的ng值,第五个就可以了

1 个答案:

答案 0 :(得分:2)

如果使用Angular-Directive ng-value ,则传入的表达式将被视为Angular代码,可以直接将dollar1和dollar2解释为范围变量。 AngularJS将处理指令 ng-value ,并将结果添加/设置在对应的输入元素的属性中。

使用html内置属性,您需要使用花括号来注入Angular代码。 在这种情况下,AngularJS只会将表达式 {{dollar1 * dollar2}} 替换为其结果。

你的不工作示例不起作用,因为AngularJS指令已经期望一些真正的程序代码,它们不能以花括号开头。它应该直接从可解释的代码开始。