AngularJS - How do I add an HTML element through a handlebar ternary operation?
注意:我所说的"handlebars"不是指 Handlebars.js,我只是指双花括号。
我有一个表格,我想在其中一个列中显示数据,以及一个额外的 HTML 元素,具体取决于三元运算的结果。
这是我的 td 代码
1 | <td>{{item.ProjectNumber}}{{item.DateSubmitted.toString().length > 0 ? null : <span class="error">Incomplete</span>}}</td> |
如果我不尝试使其成为元素(而只是显示"不完整"),它可以正常工作。但是当我尝试添加该跨度时,整段代码被添加到 td.
那么如何在把手内部创建一个 HTML 元素呢?
只需制作元素并选择使用 ng-show 隐藏它。
我通常会保留使用花括号来提供数据,而不是做出决定。如果您绝对必须像这样创建内联元素,则需要告诉您的应用程序信任 HTML,如本 SE 问题中所述。
好的,所以我想出了一种不同的方法。
1 | <td>{{factsheet.ProjectNumber}}<span class="{{factsheet.DateSubmitted.toString().length > 0 ? 'hide-error' : 'error'}}">Incomplete</span></td> |
我刚刚做了跨度并将三元逻辑放在类
的类属性中