【发布时间】:2017-04-27 05:41:09
【问题描述】:
反应:
/**
* Created by pingfengafei on 16/11/28.
*/
import React from 'react';
import HeaderContainer from './HeaderContainer';
import NavContainer from './NavContainer';
import ContentContainer from './ContentContainer';
import CSSModules from 'react-css-modules';
import styles from './HomePageContainer.less';
class HomePageContainer extends React.Component {
constructor(props) {
super(props);
}
render() {
return (
<div className="home-page-wrap-normal" styleName='home-page-wrap'>
<HeaderContainer />
<NavContainer />
<ContentContainer>
{this.props.children}
</ContentContainer>
</div>
);
}
}
export default CSSModules(HomePageContainer, styles, {allowMultiple: true});
css 样式:
webpack.config:
{
test: /\.(le|c)ss$/,
loader: "style!css?sourceMap&modules&importLoaders=1&localIdentName=[name]-[local]-[hash:base64:5]!postcss!less"
}
我想将 css 模块添加到我的 React 项目中,就像
instagram 和 react-css-modules。
但是发现2个问题:
1: 我可以部分使用 css-module 吗?
HomePageContainer-home-page-wrap-Ql_jW的子节点都失去了css样式,home-page-wrap-normal也是一样。
看来我应该在整个项目中将className替换为sytleName。有什么方法可以选择在哪里使用 styleName 和 className 并显示正确的 css 样式。
2:我可以在开发模式中开源地图吗? base64 的类不可读,我需要一个 sourceMap 连接原始类名和编译后的类名。
【问题讨论】:
标签: reactjs css-modules react-css-modules