用dva-cli作为脚手架建立工程后,开始尝试编写页面。然后立马发现一个坑爹的问题。
在我less文件里面写了一个class,比如:MainHead。
但是编译出来之后发现css文件里面变成了MainHead__xuaz,多了一个后缀,坑爹嘛这是!!!
一番查找后发现原来是引用了css-modules这个包。
为了卸载这个包,我翻找了半天。照例来说应该在webpack的时候屏蔽这个包。
可惜node项目不知道说封装了太好了还是怎么的,dva生成的脚手架里面根本就没有webpack.config.js这个包。
终于,在我的不懈努力下终于发现问题的主因了。
原因就在于dva是用一个叫rodhog的工具打包的。
在root目录下,有一个叫.roadhogrc
的配置文件。
打开这个文件,里面有一个【disableCSSModules
】的配置项。默认是false,启动css-modules,只要将它改成true,就可以屏蔽掉css-modules了。
.roadhogrc 如下
{
"entry": "src/index.js",
"env": {
"development": {
"extraBabelPlugins": [
"dva-hmr",
"transform-runtime"
]
},
"production": {
"extraBabelPlugins": [
"transform-runtime"
]
}
},
"extraBabelPlugins": [
"transform-runtime",
["import",{ "libraryName": "antd","style": "css" }]
]
,
"disableCSSModules":true
}