react 不eject扩展webpack
栏目: JavaScript · 发布时间: 6年前
内容简介:使用
使用 create-react-app
生成项目,不会有 webpack
的配置项,要导出 webpack
,必须使用 react-script eject
,但这是一个单向操作, eject
后,就无法恢复了。如果只是修改一些简单的配置, eject
是没有必要的。
1、使用 react-app-rewired
包替换 react-script
react-app-rewired@^2.0.0+
版本需要搭配 customize-cra
使用
# https://www.npmjs.com/package/react-app-rewired # https://www.npmjs.com/package/customize-cra $ npm i react-app-rewired -D $ npm i customize-cra -D 复制代码
2、在项目根目录创建 config-overrides.js
3、使用 react-app-rewired
配置 alias
# ./config-overrides.js
const { override, addWebpackAlias } = require('customize-cra')
const path = require('path')
const resolve = dir => path.join(__dirname, '.', dir)
module.exports = override(
addWebpackAlias({
['@']: resolve('src')
})
)
复制代码
4、添加 react-hot-reloader
# https://www.npmjs.com/package/react-hot-loader # https://github.com/cdharris/react-app-rewire-hot-loader $ npm i react-hot-loader -D $ npm i react-app-rewire-hot-loader -D 复制代码
5、修改 config-overrides.js
# https://github.com/arackaf/customize-cra/issues/54
# ./config-overrides.js
const { override, addWebpackAlias } = require('customize-cra')
const path = require('path')
const resolve = dir => path.join(__dirname, '.', dir)
module.exports = override(
addWebpackAlias({
['@']: resolve('src')
}),
(config, env) => {
config = rewireReactHotLoader(config, env)
return config
}
)
复制代码
6、在根组件处开启 react-hot-reloader
# ./App.jsx
import { hot } from 'react-hot-loader/root'
...
...
...
export default process.env.NODE_ENV === 'development' ? hot(App) : App;
复制代码
7、引入 antd
按需加载
+ const { override, fixBabelImports, addWebpackAlias } = require('customize-cra')
const rewireReactHotLoader = require('react-app-rewire-hot-loader')
const path = require('path')
const resolve = dir => path.join(__dirname, '.', dir)
module.exports = override(
+ fixBabelImports('import', {
+ libraryName: 'antd',
+ libraryDirectory: 'es',
+ style: 'css'
+ }),
addWebpackAlias({
['@']: resolve('src')
}),
(config, env) => {
config = rewireReactHotLoader(config, env)
return config
}
)
复制代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 【php 扩展开发】扩展生成器
- 喧喧发布 1.6.0 版本,扩展机制增强,支持服务器扩展
- 为vscode编写扩展
- JavaScript——DOM扩展
- Mac内核扩展开发
- VisualStudio 扩展开发
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Sovereign Individual
James Dale Davidson、William Rees-Mogg / Free Press / 1999-08-26 / USD 16.00
Two renowned investment advisors and authors of the bestseller The Great Reckoning bring to light both currents of disaster and the potential for prosperity and renewal in the face of radical changes ......一起来看看 《The Sovereign Individual》 这本书的介绍吧!