我正在尝试在表达式中使用表达式,如下所示。
是否可以使用双括号解析表达式中的表达式?
<body>
<div ng-app="" ng-init="names=[
{name:'Jani',exp:'{{10>20}}'},
{name:'Hege',exp:'{{abc>20}}'},
{name:'Kai',exp:'{{10==20}}'}]">
<p>Looping with objects:</p>
<ul>
<li ng-repeat="x in names">
{{ x.name + ', ' + {{x.exp}} }}</li>
</ul>
</div>
</body>
答案 0 :(得分:0)
您可以通过ng-if
声明进行评估
或通过三元表达
EX:{{10 > 20 ?"Yup":"No"}}
答案 1 :(得分:0)
最佳做法是避免以这种方式使用ng-init。您应该处理控制器内的所有变量初始化。你也不应该试图用角度来评估任意表达式,你应该知道你想要做什么。如果您提供有关您要完成的内容的更多信息,我们可以提供帮助。
话虽如此,您可以使用$eval
将任意字符串作为角度表达式进行评估。
{{ x.name + ', ' + $ctrl.$eval(ex.exp) }}
https://docs.angularjs.org/api/ng/type/$rootScope.Scope#$eval