我有一个语句,我需要根据条件分配一个变量:
<b>{{ (varA.count > 1 ? {{'varB.status' | localizedString}} : '') }} </b>
其中{{varB.status | localizedString}} 使用在其他位置指定的 localizedString 过滤“varB.Status” 例如,如果所选本地化的 varB.Status 为“Test”,它将返回“Test”
这给了我错误
Syntax Error: Token 'varB.status' is unexpected, expecting [:]
最佳答案
您有语法错误,您不需要在插值内进行插值,也不需要在不完整的表达式之间进行插值。假设 varB 也在范围内,表达式将被评估为针对范围本身的属性。
就这样做:-
<b>{{ (varA.count > 1 ? varB.status : '') }} </b>
<强> Demo
如果您想应用过滤器:-
<b>{{ (varA.count > 1 ? (varB.status | localizedString) : '') }} </b>
甚至
<b>{{ (varA.count > 1 ? varB.status : '') | localizedString }} </b>
关于javascript - Angular js 如果条件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26302403/