说明
玩转 webpack 学习笔记
使用 webpack-bundle-analyzer
代码示例:
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
module. exports = {
plugins: [
new BundleAnalyzerPlugin()
]
}
构建完成后会在 8888 端口展示大小
可以分析哪些问题?
- 依赖的第三方模块文件大小
- 业务里面的组件代码大小
实战
参考:https://github.com/webpack-contrib/webpack-bundle-analyzer
安装依赖:
npm install
添加用法:
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
module.exports = {
plugins: [
new BundleAnalyzerPlugin()
]
}
执行 npm run build
,就会打开新页面 http://127.0.0.1:8888/
为了更好的看到效果,我们添加一个 babel-polyfill
npm
然后 search 页面引入。
import "babel-polyfill"
另外,在注释掉提取出来的
// new HtmlWebpackExternalsPlugin({
// externals: [
// {
// module: 'react',
// entry: 'https://11.url.cn/now/lib/16.2.0/react.min.js',
// global: 'React',
// },
// {
// module: 'react-dom',
// entry: 'https://11.url.cn/now/lib/16.2.0/react-dom.min.js',
// global: 'ReactDOM',
// },
// ]
// }),
然后打包 npm run build
,我们就可以针对的找出问题,进行相应的处理。