主要在热更新这一块解决。
step1:
安装依赖
npm install babel-plugin-dynamic-import-node
step2:
在webpack.prod.conf.js文件设置:
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
drop_console: true,
drop_debugger: true
},
sourceMap: true,
ecma: 6,
cache: true,
parallel: true
}),
step3:
在webpack.base.conf.js文件设置,排除node——modules:
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: vueLoaderConfig
},
{
test: /\.js$/,
loader: 'babel-loader',
// include: [resolve('src'), resolve('test')]
include: [resolve('src'), resolve('test')],
exclude:/(node_modules)/ //主要这一句
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader?limit=8192',
query: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.scss$/,
loaders: ["style", "css", "sass"]
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader?name=fonts/[name].[md5:hash:hex:7].[ext]',
options: {
limit: 10000,
name: utils.assetsPath('static/fonts/[name].[hash:7].[ext]')//0712
}
}
]
},
step4:
在vue-loader文件中修改:
引入config/index.js文件中的变量
var utils = require('./utils')
var config = require('../config')
var isProduction = process.env.NODE_ENV === 'production'
module.exports = {
loaders: utils.cssLoaders({
sourceMap: isProduction
? config.build.productionSourceMap
: config.dev.cssSourceMap,
extract: isProduction
}),
cacheBusting: config.dev.cacheBusting//引入config.dev.cacheBusting
}
在condig/index.js文件中引入增加一个变量:
cacheBusting: true
最后一步:
把babel文件中声明第一步中安装的plugin
{
"presets": [
["env", { "modules": false }],
"stage-2"
],
"plugins": ["transform-runtime"],
"comments": false,
"env": {
"test": {
"presets": ["env", "stage-2"],
"plugins": [ "istanbul" ]
},
"development":{
"plugins": [ "dynamic-import-node"]
}
},
"compact": false
}
本文介绍了如何解决Vue项目编译速度慢的问题,主要聚焦于热更新优化。通过安装特定依赖,调整webpack配置,如在webpack.prod.conf.js和webpack.base.conf.js中排除node_modules,修改vue-loader设置,并在config/index.js中引入变量,以及更新babel配置,来显著提高项目的编译速度。
903

被折叠的 条评论
为什么被折叠?



