vue webpack3 升级webpack4

据说webpack3 比webpack4 编译速度将近快了60%-80%,

成功升级之后,于是来记录下,项目主要是vue ^2.5.9 , webpack ^4.10.2 , webpack-dev-sever ^3.1.4 ,配合升级的还有vue-loader ^15

项目重现编译之后由原来的1.7MB 减少到1.1MB ,看来在压缩这块也是由效果的。

需要修改的地方有以下几点:

vue-loader 14 到15 需要增加如下配置

const VueLoaderPlugin = require('vue-loader/lib/plugin')  ++++
const MiniCssExtractPlugin = require('mini-css-extract-plugin')   // webpack 4  +++

const ExtractTextPlugin = require('extract-text-webpack-plugin') //for webpack3  -----

module.exports = {
...
plugins: [
        + new VueLoaderPlugin(),  ++++
        + new MiniCssExtractPlugin({filename:'mian.css'})  //for webpack 4 +++
         - new ExtractTextPlugin({filename:'main.css'}) //for webpack 3 ---
]
...
}

webpack-dev-server 升级之后需做如下改动

devServer: {
     ++ contentBase: path.resolve(__dirname, '../dos-html'),  // 需要指定路径 ++
        port: 7001,
        hot: true,
        // open: false,
        inline: true,
        compress: true,
        historyApiFallback: true,
       ....
    },

webpack 3 升级 4 之后需要改动的配置

plugins: [
   //已经移除
   new webpack.optimize.CommonsChunkPlugin({
       name: 'vendor',
       minChunks: function (module) {
         // any required modules inside node_modules are extracted to vendor
         return (
           module.resource && /\.js$/.test(module.resource) &&
           module.resource.indexOf( path.join(__dirname, '../node_modules')) === 0
         )
       }
     }),
   new webpack.optimize.UglifyJsPlugin(...)//已经移除
}

===> 修改为以下

const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

moudel.exports = {

mode: 'production', ++ 这里指定模式。
...
optimization: {
    splitChunks: {
      name(module) {
        return (
          module.resource && /\.js$/.test(module.resource) &&
          module.resource.indexOf(path.join(__dirname, '../node_modules')) === 0
        )
      }
    },
    minimize: true,
    minimizer: [
      new UglifyJsPlugin({
        uglifyOptions: {
          compress: {
            warnings: false,
            // drop_debugger: true,
            // drop_console: true
          },
          sourceMap: false
        }
      })
    ]
  },
...
}

其他的各种报错信息,注意看,可能是模块版本太低了吧,都升级下就OK了。
[完]

原文地址:https://www.cnblogs.com/chuchur/p/10462213.html

时间: 2024-11-03 23:31:13

vue webpack3 升级webpack4的相关文章

记一次webpack3升级webpack4的踩坑

webpack4版本也出了很久了 之前弄过一段时间的升级 后面因为种种原因搁浅了 今天有硬着头皮升级了一波 yeah 还好升级成功了 先贴一波原先webpack3的github配置 ps(我只是一个菜鸡= = webpack的配置很辣鸡 )废话少说 开撸 1 webpack升级到4.0版本并且安装webpack-cli yarn add webpack-cli globalyarn add webpack-cli -D 如果不对webpack-cli进行安装的话会报错 如下: The CLI m

如何快速把 Vue 项目升级到 webpack3

由于 webpack3升级后,新增了 Scope Hositing(作用域提升) 功能,据说是对 js的性能提升很大.因此,我们做了一个测试对比,就是 webpack3和 webpack1/2 的性能对比,如下: 测试目标 以下数据是2天随机时段3部手机各2组数据,每组数据都是30次取平均值,为了测试js的解析能力,排除了网络请求的影响 平台:M5 Note Build/MRA58K 系统:android 6.0 时间 before after 2017-08-10 13:00 920 511

webpack3和webpack4区别

1.mode webpack增加了一个mode配置,只有两种值development | production.对不同的环境他会启用不同的配置. 比如设置mode等于'development',会将 process.env.NODE_ENV 的值设为 development,开发环境下启用optimization.nameModules(原nameModulesPlugin已经弃用).设置mode等于'production',会将 process.env.NODE_ENV 的值设为 produc

vue项目的webpack4.X配置

这两天摆弄webpack,躺过很多坑,直到今天看了一位博主的文章才得以解决.他对配置中的各个部分做说明. 下面的配置99.9%抄自博主: https://www.cnblogs.com/nianyifenzhizuo/p/10271001.html 安装package.json中的node-sass可能因为网络原因不能成功安装 报错信息有一大串,其中提及python和gyp,其实不用去安装他们.只要执行下面的命令: npm set sass_binary_site=https://npm.tao

VUE+WEBPACK3 项目热更新速度优化

背景: 随着项目体积变大,导致热更新速度成倍增加,严重影响开发效率! 切入点: 路由文件中引入文件过多, 开发环境使用 require 方式引入: 生产环境使用异步加载: 方法: 新建  _import_development.js module.exports = file => require('@/views/' + file + '.vue').default 新建  _import_production.js module.exports = file => () => imp

[vue]webpack3最佳实践篇

npm i [email protected] -g //全局安装webpack webpack手动使用 先创建个目录, npm初始化下 npm init -y 目录如下 然后webpack手动编译 webpack src/main.js dist/bundle.js 会自动生成dist目录和dist/bundle.js 可见webpack命令核心使命是编译. 配置webpack的配置文件,使得执行webpack更加便利 webpack.conf.js let path = require('p

webpack3新特性介绍

6月20号webpack推出了3.0版本,官方也发布了公告.根据公告介绍,webpack团队将未来版本的改动聚焦在社区提出的功能需求,同时将保持一个快速.稳定的发布节奏.本文主要依据公告内容,简单介绍一下webpack3的新特性,以及在实际项目中的应用. 升级到webpack3 升级到webpack3,只需要通过npm安装即可: npm install [email protected] --save-dev webpack3几乎与webpack2完美兼容,除了会影响一些插件的使用,官方给出的数

webpack3新特性简介

升级到webpack3 升级到webpack3,只需要通过npm安装即可: 1 npm install [email protected] --save-dev webpack3几乎与webpack2完美兼容,除了会影响一些插件的使用,官方给出的数据是:98%的用户升级后,没有影响webpack功能的正常使用.升级的时候可能会有一些相关的warning,但是一般不影响使用. 1 2 3 npm WARN [email protected] requires a peer of [email pr

Vue 2.0开发企业级移动端音乐WebAPP

第1章 课程内容介绍包括课程概述.课程安排.学习前提.讲授方式等方面的介绍,最后演示了整个音乐App的功能,让同学们对课程项目有一个直观的了解.1-1 导学1-2 课前必读(源码获取方式) 第2章 项目准备工作包括项目需求分析.脚手架初始化代码.项目目录介绍及图标字体.公共样式等资源的准备 .2-1 需求分析2-2 Vue-cli脚手架安装2-3 项目目录介绍及图标字体.公共样式等资源准备 第3章 页面骨架开发包括页面入口.header 组件的编写.路由配置及顶导 tab 组件开发.3-1 页面