在creat-react-app搭建的项目环境中按需引入antd以及配置less,首先须要暴露出来webpack文件。(此操做不可逆)。javascript
create-react-app myapp 建立同一个react项目 yarn add antd less less-loader babel-plugin-import 须要配置的 less 和 babel依赖
暴露wenpack文件的指令是yarn eject. 在使用这个指令以前要先推送一次git文件才行。或者删除git文件。css
提交git :java
git add . git commit -m 'xxxx' git push
而后再yarn eject
运行以后会询问是否暴露,输入y便可。react
此时在项目目录下会多出一个config文件夹。,webpack
当你运行项目的时候你会发现报错 : 缺乏@babel/plugin-syntax-jsx文件
git
//执行命令
yarn add @babel/plugin-syntax-jsx
而后在config文件夹里面找webpack.config.js文件在大概345行处添加代码web
['import',{libraryName:'antd', style:true}],
在大概455行处添加代码babel
{ test: /\.less$/,
use: [{ loader: "style-loader"
}, { loader: "css-loader"
}, { loader: "less-loader",
options: { sourceMap: true, modifyVars: { '@primary-color': '#f9c700', //修改antd主题色 }, javascriptEnabled: true, } }] },
而后重启项目,就能够按需引入antd、引入less文件了。而且主题色也变为了修改的#f9c700色。antd
引入一个Button按钮来举个例子:app
App.js文件:
import React from 'react'; import { Button } from 'antd' import './app.less'
function App() { return ( <div>
<Button className="button" type="primary">按需引入antd和配置less</Button>
</div>
); } export default App;
app.less文件:
1 .button{ 2 margin: 100px; 3 }
效果图: