我有一个生产应用程序,其捆绑包大小为8.06MB。
# Console log from npm build
File sizes after gzip:
1.67 MB build/static/js/3.73cf59a2.chunk.js
794.29 KB build/typescript.worker.js
131.13 KB build/css.worker.js
104.68 KB build/html.worker.js
104.02 KB build/static/css/3.01bcafd3.chunk.css
67.03 KB build/static/js/main.6acf560d.chunk.js
49.64 KB build/json.worker.js
25.12 KB build/editor.worker.js
7.99 KB build/static/js/54.afc981d1.chunk.js
...
关于构建应用程序并运行source-map-explorer
npm run build
source-map-explorer 'build/static/js/*.js'
我收到警告build
:
捆绑包大小明显大于推荐的大小。
您可以检查源映射。
我想减小捆绑包的大小,根据我所做的研究,它得出的结论是:
- 寻找大型图书馆的替代品。
- 为我的需要制作一个“精简”版本的库。
- 按需导入单个组件:
import Button from 'antd/es/button';
import { Button } from 'antd'; // Imports all library
- 代码拆分。
- 将库移至
devDependencies
我有一些问题:
- 为什么小包很重要?
- 推荐的捆绑包大小是多少,为什么?
- 我了解代码拆分会将您的代码拆分为各种捆绑包,然后可以按需或并行加载。它如何帮助减少捆绑包的大小?
- 我如何决定图书馆是否需要成为其中的一部分
devDependencies
- 还有其他方法吗?