我使用的条件是,如果activeCardId为null,则不返回任何内容,否则它将返回某些内容。对于除0以外的所有值,它都工作正常。当value为0时,它不返回任何内容。
我认为它与0和null有关。
constructor(props) {
this.state = {
activeCardId: null
}
}
return(
{this.state.activeCardId && ( // some random output...)
此语句表示如果activecardId不为null,则返回一些随机输出,如果activecardId为null,则不返回任何内容。
答案 0 :(得分:1)
这是因为您正在使用logical AND (&&)
。
0
表示虚假值,而逻辑AND不会返回任何虚假值,您应该尝试使用此方法
{this.state.activeCardId !==null && ( // some random output...) }
答案 1 :(得分:0)
0是一个伪造的值,所以
this.state.activeCardId
成为错误
答案 2 :(得分:0)
这可以完成工作:
return(
{this.state.activeCardId!==null && ( // some random output...)
null和0之间存在差异, 0是一个值,0在布尔语句中也是虚假的 而null表示有意缺少任何对象值。