Angular, ng-click 中的三元

Angular, ternary in ng-click

我在 ng-click 中有一个三元组,用于在 'bookmarks' 和 'none' 之间交换值。第一次点击将其更改为书签效果很好,但第二次点击却不行。我认为我的语法或逻辑有问题。 这是代码:

ng-click="current = 'bookmarks' ? current = 'bookmarks' : current = 'none' "

我什至在屏幕上打印 {{current}},一旦我将其切换到书签,它就会从书签更改。将不胜感激任何帮助。谢谢!

你的ternary表达有误。

bookmarks(string) 被评估为 true 因此,current 将始终分配给 bookmarks。这似乎是第一次工作。但是,对于下一次点击,它将始终指定为 bookmarks

使用以下表达式:

ng-click = "current = (current == 'bookmarks') ? 'none' : 'bookmarks'"

我想你正在寻找

ng-click="current = (current == 'bookmarks') ? 'none' : 'bookmarks' "