我有一个 ng-repeat,它在对象中有一个数组。例如:contract.fields[4]
。
<tbody data-ng-repeat="(contractIndex,contract) in contracts">
<tr>
<td>
<div data-strat-form-control
data-field-display-id="1"
data-vmformreadonly="true"
data-show-tool-tip="showToolTip(contract.fields[3].htmlName)"
data-strat-model="contract"
data-field="contract.fields[1]">
</div>
</td>
<td>
<div data-strat-form-control
data-field-display-id="1"
data-vmformreadonly="true"
data-show-tool-tip="showToolTip(contract.fields[4].htmlName)"
data-strat-model="contract"
data-field="contract.fields[3]">
</div>
</td>
</tr>
</tbody>
我想在 if 语句中添加广告,以便不同的contract.fields 数组位置将位于数据字段标记下。
<div data-strat-form-control
data-field-display-id="1"
data-vmformreadonly="true"
data-show-tool-tip="showToolTip(contract.fields[3].htmlName)"
data-strat-model="contract"
data-field="{{contract.COMMIT_CONTRACT.length > 1 | 'contract.fields[1]' : 'contract.fields[2]'}}">
</div>
这里是单独的括号表示法:
{{contract.COMMIT_CONTRACT.length > 1 | 'contract.fields[1]' : 'contract.fields[2]'}}
这段代码有问题,但看起来我做错了什么。它是什么以及如何修复它?
最佳答案
你的表达方式好像不对。首先,您不需要在 data-field 属性中使用 {{}}。 然后应去除单个顶点。 那么您似乎想使用三元运算符,但该语法是错误的。 我想你的表达应该很简单:
contract.COMMIT_CONTRACT.length > 1 ? contract.fields[1] : contract.fields[2]
关于javascript - 评估括号中的 if 语句并分配给 HTML 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44123132/