赞
踩
1、根目录首先要创建一个webpack.dll.config.js的文件
2、在package.json下面的script添加
"dll": "webpack -p --progress --config ./webpack.dll.config.js",
3、执行 npm run dll
会生成vendor.dll.js和vendor.manifest.json
两个文件,不多赘述
4、在vue.config.js
`cnpm i add-asset-html-webpack-plugin -D`
add-asset-html-webpack-plugin插件是把打包出来的dll.js引入到index.html中
5、执行npm run build
进行打包
时间上也比之前快了10S左右;
在压缩过程中对碎片化的冗余代码(如 console 语句、注释等)进行自动化删除;parallel使用多进程并行运行可提高构建速度,因此强烈建议使用,对文件体积,构建速度都有显著效果!
安装npm install uglifyjs-webpack-plugin --save-dev
在vue.config.js引入const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
- new UglifyJsPlugin({
- uglifyOptions: {
- cache: true, // 启用缓存
- compress: {
- drop_debugger: true,
- drop_console: true, //生产环境自动删除console
- },
- output: {
- // 不保留注释
- comments: false, beautify: false
- },
- warnings: false,
- },
- sourceMap: false,
- parallel: true, //使用多进程并行运行来提高构建速度。默认并发运行数:os.cpus().length - 1。
- });
在项目中经常会使用到moment做一些时间处理,但是monment里面包含了很多语言包都会打进项目里面,导致了项目体积变大,构建速度减慢。可以使用webpack的IgnorePlugins
进行忽略掉,在vue.config.js里面添加:
new webpack.IgnorePlugin(/\.\/locale/, /moment/)
- import moment from 'moment'
- //手动引入所需要的语言包
- import 'moment/locale/zh-cn';
- moment.locale('zh-cn');
对一些打包的文件进行缓存,这样可以提高构建速度!效果也非常显著!
首先通过npm i -D hard-source-webpack-plugin
来安装插件;
- var HardSourceWebpackPlugin =
- require('hard-source-webpack-plugin');
- module.exports = {
- plugins: [
- new HardSourceWebpackPlugin()
- ]
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。