Angular 表达式在三元运算符中不起作用

Angular expression is not working in ternary operator

我刚开始使用 Angular,实施起来似乎很好,我很享受。

我刚刚在我的 HTML 页面中使用了三元运算符,但它不起作用,我得到 Angular parsing error

这是我要执行的内容。

<button class="common btnYellow viewAllText">{{data.data.bookmarks[0].category_name.length>=0 ? '{{data.data.bookmarks[0].category_name}}' : 'Recently Added'}}</button> 

接下来我可以尝试什么?

替换为:

{{data.data.bookmarks[0].category_name.length>=0 ? '{{data.data.bookmarks[0].category_name}}' : 'Recently Added'}}

有了这个:

{{data.data.bookmarks[0].category_name.length>=0 ? data.data.bookmarks[0].category_name : 'Recently Added'}}

<button class="common btnYellow viewAllText">{{data.data.bookmarks[0].category_name.length>=0 ? data.data.bookmarks[0].category_name : 'Recently Added'}}</button>

无需将插值表达式嵌套在一起。

使用这个:

<button class="common btnYellow viewAllText">{{data.data.bookmarks[0].category_name.length>=0 ? data.data.bookmarks[0].category_name : 'Recently Added'}}</button>

试试这个,

{{data.data.bookmarks[0].category_name.length>=0 ? data.data.bookmarks[0].category_name : 'Recently Added'}}

您已经使用过 angular 表达式解析器,因此您不必再次重复。 您也不必为 angular 表达式添加 ''

此外,使用大括号使表达式更清晰 -

<button class="common btnYellow viewAllText">
    {{ (data.data.bookmarks[0].category_name.length >= 0) ? 
    data.data.bookmarks[0].category_name : 'Recently Added' }}
</button>