zoukankan      html  css  js  c++  java
  • react 中添加多个class的方法

    在写样式的时候,有时候会有公共 class 和 特定 class 组合的形式,这样可以减少 css 的代码量。
    给 react 中的元素添加多个 className 的方式有 3 种:
    1、使用 classnames 库
    npm install classnames --save 安装依赖
    import classnames from 'classnames' 引入依赖
    使用:

    <div className={classnames(styles.signStateStyle, styles.applyCodeStyle)}>预约码</div>
    // <div class="antd-pro-pages-mobile-product-list-index-signStateStyle antd-pro-pages-mobile-product-list-index-applyCodeStyle">预约码</div>
    
    <div className={classnames({ class1: true, class2: false })}>预约码</div>
    // <div class="class1">预约码</div>
    // true 渲染此class,false 不渲染此class。根据实际情况换成自己的条件。
    
    <div className={classnames('class3', { class1: true, class2: false })}>预约码</div>
    // <div class="class3 class1">预约码</div>
    
    <div className={classnames('class3', { class1: true }, { class2: false })}>预约码</div>
    // <div class="class3 class1">预约码</div>
    

    2、使用模板字符串拼接

    <div className={`${styles.signStateStyle} ${styles.signed}`}>预约码</div>
    // <div class="antd-pro-pages-mobile-product-list-index-signStateStyle antd-pro-pages-mobile-product-list-index-signed">已签约</div>
    

    3、数组拼接

    <div className={[styles.signStateStyle, styles.signing].join(' ')}>预约码</div>;
    // <div class="antd-pro-pages-mobile-product-list-index-signStateStyle antd-pro-pages-mobile-product-list-index-signing">签约中</div>
    
  • 相关阅读:
    内核模块的一些问题
    [转]change the linux startup logo
    raspbian 静态IP
    [转]centos7 配置yum源(本地+光盘)
    [转]source inslght使用指导
    T420修改wifi灯闪动模式
    root运行chrome
    [转]理解阻塞非阻塞与同步异步
    [转] 计算机体系架构分类
    Win7下安装 Oracle Virtual Box
  • 原文地址:https://www.cnblogs.com/xguoz/p/13886354.html
Copyright © 2011-2022 走看看