webpack官网上,对于clean-webpack-plugin是这样引用的:
const CleanWebpackPlugin = require("clean-webpack-plugin"); module.exports = { mode: "development", entry:{...}, output:{...}, module:{...}, plugins:[ new CleanWebpackPlugin(['dist']) ]
}
当我运行webpack命令,进行打包时,出现 TypeError: CleanWebpackPlugin is not a constructor。起初,我以为是我自己代码打错了,并粘贴复制webpack官网上代码,运行webpack命令时,依旧出现如上错误。
在这里解释一下,webpack插件都是一个功能函数,帮我们解决特定的事情。(相当于express里面的middleware,我自己是这么理解的。)根据错误,那么很有可能是源头出了问题,(即require进来的时候)。
npm官网地址:https://www.npmjs.com/package/clean-webpack-plugin
点击上面链接自动跳转到clean-webpack-plugin在npm上资源页面。
解决办法:使用{}包裹CleanWebpackPlugin, 并在创建实例方法不要添加参数,实际代码如下:
const {CleanWebpackPlugin} = require("clean-webpack-plugin"); module.exports = { mode: "development", entry:{...}, output:{...}, module:{...}, plugins:[ new CleanWebpackPlugin() ]
}