我使用vue cli v3完成了一个项目。在构建项目后,我看到了2个警告,即:
warning
asset size limit: The following asset(s) exceed the recommended size limit (244 KiB).
This can impact web performance.
Assets:
js/chunk-vendors.2557157d.js (474 KiB)
warning
entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB). This can impact web performance.
Entrypoints:
app (617 KiB)
js/chunk-vendors.2557157d.js
css/app.821fcb13.css
js/app.b5a47a94.js
现在经过检查,我发现如果我在Webpack配置中添加以下内容
performance: {
maxEntrypointSize: 512000,
maxAssetSize: 512000
}
然后它将自动将js文件分成小块。现在,在vue cli 3中没有webpack.config文件。因此,如果您能够指导如何实现此功能,以便当文件超过某个限制时自动进行分块,那将非常有帮助。这是我看到它的地方:https://github.com/webpack/webpack/issues/3486#issuecomment-397915908。期待您的回复。附言:我已阅读了这篇文章,并尝试创建了vue.config.js文件,并在文件中添加了以下内容。
module.exports = {
configureWebpack: {
performance: {
maxEntrypointSize: 512000,
maxAssetSize: 512000
}
}
}
但是它没有做任何事情。有人可以帮忙告诉我该怎么做才能确保我的js文件块不会超过vue的推荐大小吗?
更新
根据Linus Borg的答案,我尝试将以下两个代码放入vue.config.js
文件中。尝试1:
module.exports = {
configureWebpack: {
splitChunks: {
minSize: 10000,
maxSize: 250000,
}
}
}
并且 尝试2:
module.exports = {
configureWebpack: {
splitChunks: {
cacheGroups: {
node_vendors: {
test: /[\\/]node_modules[\\/]/,
chunks: "all",
priority: 1
}
}
}
}
}
当我为生产环境构建项目时,两者都出现了相同的警告,尽管没有更改任何大小:https://i.imgur.com/7Hp7SXC.jpg 看起来它们都没有影响任何变化。需要帮助吗?