Javascript 让其中一个道具更改类名、CSS模块

Javascript 让其中一个道具更改类名、CSS模块,javascript,reactjs,react-proptypes,css-modules,Javascript,Reactjs,React Proptypes,Css Modules,这个类名接受一个等于类(例如:'primary')的oneOf属性。我试图弄清楚如何格式化这个类名,以便它与CSS模块一起工作 下面的代码将类名呈现为styles.primary,如果我们将primary作为prop传入。但是我们不会让css模块处理它 从“../../style/components/buttons/Cta.module.css”导入样式; 导出常量CTA=({fit,type,…props})=>{ const mode=fit?styles.fit:styles.fill;

这个类名接受一个等于类(例如:'primary')的oneOf属性。我试图弄清楚如何格式化这个类名,以便它与CSS模块一起工作

下面的代码将类名呈现为styles.primary,如果我们将primary作为prop传入。但是我们不会让css模块处理它

从“../../style/components/buttons/Cta.module.css”导入样式;
导出常量CTA=({fit,type,…props})=>{
const mode=fit?styles.fit:styles.fill;
返回(
);
};
CTA.propTypes={
fit:PropTypes.bool,
类型:PropTypes.oneOf(['primary','secondary','treative','disabled']),
};
有什么想法吗?

我就是这样做的:

 <li className={`${css.notification} ${css.important}`}>

  • 是的,您可以使用反勾号而不是数组。主要的问题是格式化类名,这样我们就可以得到道具了。如果我们写${styles.type},它将呈现未定义。
     <li className={`${css.notification} ${css.important}`}>