webpack DllPlugin的用法

1. 首先将需要打包的文件打包为dll

需要一个打包配置 webpack.dll.js

复制代码
const webpack = require('webpack')
const path = require('path')

module.exports = {
  entry: {
    react: ['react', 'react-dom']
  },
  output: {
    library:  'react', // 以一个库的形式导出
    filename: '[name].dll.js'
  },
  plugins: [
    new webpack.DllPlugin({
      name: 'react',
      path: path.resolve(__dirname, 'dist/manifest.json')
    })
  ]
}
复制代码

生成一个 react.dll.js打包文件和一个结构文件manifest.json,manifest.json用于读取打包前文件后打包后文件的对应关系,
可能会有多组文件需要打包。

打包命令

"script" : {
    "dll": "webpack --config webpack.dll.js --mode=development"
}

2. 项目中引入打包的结构文件,页面中引入打包文件

plugins: [
    new webpack.DllReferencePlugin({
      manifest: path.resolve(__dirname, 'dist/manifest.json')
    }),
    new AddAssetHtmlPlugin({ filepath: path.resolve(__dirname, 'dist/react.dll.js') })
]

3. 使用AtuoDllPlugin快速完成dll打包

上面的步骤中的打包配置略显繁琐,可以使用autodll-webpack-plugin代替上面的配置

复制代码
new AutoDllPlugin({
    inject: true, // will inject the DLL bundle to index.html
    debug: true,
    filename: '[name]_[hash].js',
    context: path.join(__dirname, '..'),
    path: './dll',
    entry: {
        vendor: [ 'react','react-dom' ]
    }
})
复制代码

 

posted @   全玉  阅读(1729)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-05-28 React错误收集
点击右上角即可分享
微信分享提示