几个CSS文件用于react CSS模块

Dmi*_*nko 3 reactjs webpack css-modules react-css-modules

我有2个相同的组件,它们的样式略有不同,因此我想重用常见的样式,但又不想为它们使用全局CSS,如何实现呢?

import React from 'react';
import commonStylesfrom '../common/table.css';
import styles from '../uniquesStyles.css';

export default class Table extends React.Component {
   render () {
      return <div styleName='table'>
           <div styleName='something-diffrent'>
               <div styleName='cell'>A0</div>
               <div styleName='cell'>B0</div>
           </div>
      </div>;
   }
} 

//how can I combine 2 files here
export default CssMudule(Table, {styles, commonStyles})
Run Code Online (Sandbox Code Playgroud)

Joe*_*Joe 5

您要做的就是导入组件css文件和共享的css文件,然后将它们合并在一起,然后传递给CSSModules。然后,您也可以根据需要在另一个模块中导入sharedStyles,并以相同的方式使用它。

例:

import styles from './styles.css'
import sharedStyles from './sharedStyles.css'

const tableStyles = {...styles, ...sharedStyles }
Run Code Online (Sandbox Code Playgroud)

然后将新对象传入

CSSModules(Table, tableStyles)
Run Code Online (Sandbox Code Playgroud)