react&antd问题

在工作有一个需求是点击相应的按钮换成<tag>标签相应的颜色,但是按钮没有<tag>标签的那个颜色,于是只能通过style来加。

 

 <Button type={record.status === 1 ? "default" : "primary"} onClick={() => this.buttonChange(2, index)} disabled={disabled} style= {{borderColor: record.status === 2? '#B7EB8F': '', backgroundColor: record.status === 2? '#F6FFED': '',color: record.status === 2? '#52C41A': ''}}>
                误杀
   </Button>

这是原来的写法,但是这样写有很多重复的代码,而且也不美观,于是我在搜索了后换了下面的代码,因为style={}里面接的是一个对象,所以我声明一个方法最后返回一个对象就行了。这种情况适用于对数据状态不同设置不同的样式的情况

<Button type={record.status === 1 ? "default" : "primary"} onClick={() => this.buttonChange(2, index)} disabled={disabled} style= {this.changeButtonColor(record)}>
                误杀
              </Button>

//button按钮点击误杀变成相应的颜色
  changeButtonColor(record){
    let style
    if(record.status === 2){
      style = {
        borderColor: '#B7EB8F',
        backgroundColor: '#F6FFED',
        color: '#52C41A'
      }
      return style
    }
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值