当前位置:首页 >> 网络编程

webpack DllPlugin xxx is not defined解决办法

造成这个错误主要有3个可能的原因:

  • context上下文不一致
  • library和name 不一致
  • 生成的dll文件没加入到html文件中

dll.config.js

module.exports = {
  mode:"production",
  output: {
    path:path.resolve(__dirname, '../dist'),
    filename: '[name].dll.js',
    library: dllName, //这里需要和DllPlugin option.name 一致
  },
  entry: {
    "lib": vendors,
  },
  plugins: [
    new webpack.DllPlugin({
      path:path.resolve(__dirname,'../dist/manifest.json'),
      name: dllName,
      context: __dirname, //上下文必填
    }),
    new CleanWebpackPlugin([`./dist/*.dll.js`,`./dist/*.json`], { root: path.resolve(__dirname, "../") }),
  ]
 }

webpack.config.js   

 new webpack.DllReferencePlugin({
   context: __dirname, //这个上下文对应DllPlugin
   manifest: require('../dist/manifest.json')}
   ),
   new AddAssetHtmlPlugin( 
    [
      {
        filepath: "./dist/*.dll.js", //将生成的dll文件加入到index.html中
      },
    ]
  ),

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。