本文采用的結構是 create-react-app + antd
的主題修改方式。javascript
antd的官網上有介紹如何修改主題,定製主題的配置,可是是在沒有作npm run eject
的基礎上。須要請移步:ant.design/docs/react/…java
然而如今使用基本腳手架開發的咱們,聽說create-react-app
這個腳手架是目前最輕量級好用的腳手架了,它自己的配置已經足夠知足了咱們全部的開發使用。react
可是開發同窗們依舊會經過npm run eject
來暴露webpack的配置,給自定義配置留有餘地。webpack
有些配置在eject
先後有那麼一點不同~~~git
獻上github地址:點擊github
能夠愉快的添加配置了
腳手架的基礎配置完成以後,即繼 less、babel 配置以後:web
/config/webpack.config.js
下設置好less的配置,這裏,!必定要配置less:// 大概40行的位置,定義less變量
const lessRegex = /\.less$/;
const lessModuleRegex = /\.module\.less$/;
//大概440幾行的位置,添加less配置
{
test: lessRegex,
exclude: lessModuleRegex,
use: getStyleLoaders(
{
importLoaders: 2,
sourceMap: isEnvProduction && shouldUseSourceMap
},
'less-loader'
),
sideEffects: true
},
{
test: lessModuleRegex,
use: getStyleLoaders(
{
importLoaders: 2,
sourceMap: isEnvProduction && shouldUseSourceMap,
modules: true,
getLocalIdent: getCSSModuleLocalIdent
},
'less-loader'
)
}
複製代碼
// 大概115行的位置
if (preProcessor) {
let loader = {
loader: require.resolve(preProcessor),
options: {
sourceMap: isEnvProduction && shouldUseSourceMap,
},
}
if (preProcessor === "less-loader") {
loader.options.modifyVars = {
'primary-color' : '#1DA57A',
// 'btn-primary-bg': '#FF2A8E',
// 'btn-default-bg': '#6236FF',
// 'menu-dark-bg':'linear-gradient(#64687D,#3D415A)',
// 'menu-dark-submenu-bg':'#fff',
}
loader.options.javascriptEnabled = true
}
loaders.push(loader);
}
複製代碼