首页  >  问答  >  正文

将一个值从react组件传递给scss

我在 .jsx 组件中有以下代码,

<div className={type === "travellist" ? "headerContainer listmode" : "headerContainer"}>

在 .scss 中,如何使用 headerContainer 类的列表模式? 例如:

.headerContainer.listmode{

            margin: 20px 0px 40px 0px;
            }
or 
    .headerContainer{

            margin: 20px 0px 100px 0px;
            }

P粉463824410P粉463824410375 天前497

全部回复(1)我来回复

  • P粉274161593

    P粉2741615932023-09-14 09:42:16

    您可以反转与 css-modules 的关系,我建议设置它在像 Webpack 这样的构建系统中(例如使用 sass-loadercss-loader 插件)。然后可以将类名导入到 JavaScript 中。默认情况下,每个类都是本地范围的(即给出唯一的名称),但可以使用可用选项进行更改。

    /* In your stylesheet */
    .headerContainer.listmode {
        margin: 20px 0px 40px 0px;
    }
    .headerContainer{
        margin: 20px 0px 100px 0px;
    }
    
    // In JS
    import { headerContainer, listmode } from './style.scss';
    
    const className = type === 'travellist' ? `${headerContainer} ${listmode}` : `${headerContainer}`;
    <div className={className}>
    

    回复
    0
  • 取消回复