场景: 某些情况下(例如,小程序),我们可能会引入一些插件,而有些插件可能不支持vue框架的写法,只支持原生写法。这时如果直接引入插件,打包编译时会被影响。我们需要忽略这个插件并把他直接拷贝到打包目录中。copy-webpack-plugin即可解决。
安装
yarn add copy-webpack-plugin@5.0
打包时,可能会出现 compilation.getCache is not a function 的错误。当时我安装的是5.1版本,降低到5.0发现可以了。
vue.config.js
const path = require('path')
const CopyWebpackPlugin = require('copy-webpack-plugin')
module.exports = {
configureWebpack: {
plugins: [
new CopyWebpackPlugin([
{
from: path.resolve(__dirname, 'src/'),
to: path.resolve(__dirname, 'dist/')
}
])
]
}
webpack.config.js
const CopyPlugin = require("copy-webpack-plugin");
module.exports = {
plugins: [
new CopyPlugin({
patterns: [
{ from: "source", to: "dest" },
{ from: "other", to: "public" },
],
options: {
concurrency: 100,
},
}),
],
};