在我的控制器上,我有类似的东西:
this.user = {
first_name: "David",
full_name: "David Silva"
}
我得到的数据有时没有 full_name,所以我尝试了这个表达式:
{{user.full_name || user.first_name}}
它似乎有效,但经过仔细检查后,我意识到它在常规 JS 中的表现并不如何。我期待如果 full_name 未定义或为空,它会尝试另一个,但如果 之后的表达式||有效,则无论左侧的表达式如何,它都会评估为该值。
我找不到原因,我想更多地了解如何解释它以适当利用它。
我在 angularJS 中遇到了麻烦||。为了获得相同的效果,我发现最好使用三元运算符。所以你这样写:
user.full_name ? user.full_name : user.first_name
Run Code Online (Sandbox Code Playgroud)
这相当于
if(user.full_name)
return user.full_name
else
return user.first_name
Run Code Online (Sandbox Code Playgroud)
三元运算符有点冗长,但我发现它有效,但||有问题。
| 归档时间: |
|
| 查看次数: |
5965 次 |
| 最近记录: |