我正在使用Angular2,我有两个布尔值:隐藏,折叠。我正在打印它们的OR表达式。输出是:
{{ hidden }} {{ collapsed }} {{ hidden || collapsed }}
false false false
true false true
false true false
当其中一个是真的时,我期望“真”,但如果第一个是“假”而第二个是“真”,它会给出“假”。我使用OR运算符错了吗?这里有什么问题?
编辑:我尝试了“假&& true”,它给出了“真实”
答案 0 :(得分:0)
尝试以下方法:
<div>{{ type(hidden) }} {{ type(collapsed) }}</div>
<div>{{ hidden }} {{ collapsed }}</div>
<div>{{ hidden || collapsed }}</div>
并在您的组件中
type(prop) {
return typeof prop;
}
答案 1 :(得分:0)
我遇到了同样的问题,t&amp;&f已成为现实! 我发现从html注入的@Input必须是括号[]。 让我们说你从html标签隐藏传递,所以它应该是:
<app-input-user [hidden]="false"></app-input-user>
然后隐藏将始终是布尔值。您可以在OnInit()中查看它的类型,并查看:)