如果我需要在 data-ng-bind 指令中对三元条件使用一次性绑定,这是否正确?
<span data-ng-bind="::model.boolean ? 'json.item.value1' : 'json.item.value2'"></span>
或
<span data-ng-bind="::(model.boolean ? 'json.item.value1' : 'json.item.value2')"></span>
是的。整个表达式,无论它是什么,都将被解析和读取一次。
内部将发生的情况相当于:
// If not bound
value = $parse("model.boolean ? 'json.item.value1' : 'json.item.value2'")(scope)
注意:如果model.boolean
为 true,您实际上将看到字符串"json.item.value1"
,而不是它包含的实际值。如果要评估它,则需要删除单引号'
使其变为:
<span data-ng-bind="::model.boolean ? json.item.value1 : json.item.value2"></span>