最近做一个vue项目遇到了一个问题,项目打包上线发现chunk-vendors.js文件也太大了点,第一次加载页面需要将近30s,这肯定是无法容忍的,于是‘调研’了一番,记录下解决方法
在vue.config.js中添加
const path = require('path');
const webpack = require('webpack')
const CompressionWebpackPlugin = require('compression-webpack-plugin')
const productionGzipExtensions = ['js', 'css']
const isProduction = process.env.NODE_ENV === 'production'
module.exports = {
devServer: {
disableHostCheck: true
},
configureWebpack: {
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
'@i': path.resolve(__dirname, './src/assets'),
}
},
plugins: [
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
// 下面是下载的插件的配置
new CompressionWebpackPlugin({
algorithm: 'gzip',
test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
threshold: 10240,
minRatio: 0.8
}),
new webpack.optimize.LimitChunkCountPlugin({
maxChunks: 5,
minChunkSize: 100
})
]
}
}
然后需要在nginx中设置
找到nginx文件夹,编辑conf/nginx.conf文件
在server{}中添加下列代码
server{
```
gzip on;
gzip_min_length 1k;
gzip_comp_level 9;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary on;
gzip_disable "MSIE [1-6]\.";
```
}
重新启动项目就可以看到chunk-vendors.js文件已经被压缩,页面加载速度会提升很多
本人新手一枚,如果有更好的方法欢迎大佬在评论区留言,我会努力学习的