首页 > Web开发 > 详细

记录一次webpack3升级到webpack4过程

时间:2019-08-26 15:50:59      阅读:78      评论:0      收藏:0      [点我收藏+]

       升级之前也参考了一些网上的教程。借鉴之,进行的自己的升级。一些版本为什么设为那个版本号也是参考别人的结果。

       整体是按照先升级npm run dev;在升级npm run build的顺序。

       首先升级webpack,在package.json文件中将webpack版本号修改为4.8.1。

    "webpack": "^4.8.1",

  之后npm run dev,报错

技术分享图片

     解决的办法是

"webpack-dev-server": "^3.1.4",

 继续npm run dev 

技术分享图片

    很明显这是没有安装webpack-cli,安装webpack

"webpack-cli": "^3.3.7",

  继续npm run dev

技术分享图片

技术分享图片

      因为项目运用了DllReferencePlugin,升级之后需要重新生成dll文件。之后因为webpack4自身已经移除了uglifyjsplugin所以不能用了,改用下面插件进行代码压缩。

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

  修复后,npm run dev

技术分享图片

       解决方案升级 html-webpack-plugin

"html-webpack-plugin": "^3.2.0",

技术分享图片

      webpack4 需要使用vue-loader 15.0.0 至少。所以升级vue-loader

"vue-loader": "^15.0.10",

   注意vue-loader需要以插件的形式写在webpack配置项plugin里面。

const { VueLoaderPlugin } = require(‘vue-loader‘)
webpack:{
  ....,
 plugins: [
    new VueLoaderPlugin(),
    .....
   ]
}

 ok,npm run dev升级完毕。

    注意这里版本号虽然,如上来写,但需要刘杰"^"这个符号的意义,意义是大版本号不变,中间版本号会自动下载最新的。还有一个符号"~",是只小版号变化。

    然后升级npm run build。

    webpack 4 不能再用extract-text-webpack-plugin,大多数教程推荐使用mini-css-extract-plugin,这个可以百度。用这个插件替换build环境的extract-text-webpack-plugin即可。

    其他:升级过程中还出现的问题有

技术分享图片

      这是因为eslint需要升级,升级到eslint-loader

 "eslint-loader": "^2.0.0",

  技术分享图片

      这是因为使用了elment-ui,当升级到2.11.x时候会出现这个错误,这个错误最终没有解决, 只有降级element-ui版本。

 

记录一次webpack3升级到webpack4过程

原文:https://www.cnblogs.com/zhensg123/p/11412679.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!