react jsx 中的条件判断

想知道怎么拓展<if>标签的, 请看我另一篇文章
http://my.oschina.net/wolfx/blog/707181

react jsx 中的条件判断

说到条件判断,很容易想到的就是if,有很多模版引擎都是这样处理的.

<div className={if(isComplete){"isComplete"}}>...</div>

但是,上面的代码在react中是错误的

解决办法有一下4种 1.使用三目运算符 2.设置变量,在属性中引用它 3.用函数处理 4.使用&&运算

使用三目运算符
...
render:function(){
    return <div className={
        this.state.isComplete ? "isComplete" : ""
    }>...</div>
}
...
使用变量
...
getIsComplete:function(){
    return this.state.isComplete ? "isComplete" : "";
},
render:function(){
    var isComplete = this.getIsComplete();
    return <div className={isComplete}>...</div>
}
...
使用函数

只需要改变一下上面的方法

getIsComplete:function(){
    return this.state.isComplete ? "isComplete" : "";
},
render:function(){
    return <div className={this.getIsComplete()}>...</div>
}
使用&&运算符

如果isComplete为true,&&后面的就会被使用

...
render:function(){
    return <div className={this.state.isComplete && "isComplete"}>...</div>
}
...

转载于:https://my.oschina.net/wolfx/blog/625337

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值