zoukankan      html  css  js  c++  java
  • react设置多个className

    在一个元素上设置样式,有一个固定的样式,然后还有一个使用三元运算符根据条件添加的样式。

    比如说有一个固定样式"title":
    <div className="title">标题</div>,
    然后还要一个点击高亮的样式:
    <div className={index === this.state.active ? "active" : null}>标题</div>
    不能这样写:
    <div className="title" className={index === this.state.active ? "active" : null}>标题</div>
    

      

    方法一:ES6 模板字符串 ``

    className={`title ${index === this.state.active ? 'active' : ''}`}
    

      

    方法二:join("")

    className={["title", index === this.state.active?"active":null].join(' ')}
    

      

    方法三:classnames(需要下载classnames)

    var classNames = require('classnames');
    
    var Button = React.createClass({
      // ...
      render () {
        var btnClass = classNames({
          btn: true,
          'btn-pressed': this.state.isPressed,
          'btn-over': !this.state.isPressed && this.state.isHovered
        });
        return <button className={btnClass}>{this.props.label}</button>;
      }
    });
    

      

  • 相关阅读:
    hdu 1047 Integer Inquiry
    大数模板(高精度)
    git 学习
    java List 排序
    简单排序总结
    JDK1.8
    webservice 学习笔记 1
    inline-block,inline,block,table-cell,float
    mybatis 学习视频总结记录
    left join right inner join 区别
  • 原文地址:https://www.cnblogs.com/mmykdbc/p/9505621.html
Copyright © 2011-2022 走看看