vue-cli3專案 升級到 vue-cli4 的方法總結

web_zhou發表於2020-03-18

這是我對以前配置的基於vue-cli3搭建的前端H5模板的升級,主要把vue-cli3專案升級為vue-cli4,並刪除一些過時外掛。外掛版本升級到當前(2020-03-19)最高版本(升級了很多webpack外掛版本),升級完後新加多域名代理配置,官方升級文件點我點我

按著官方的文件升級來也會碰到很多坑,?,配置完可直接使用。

主要功能包括

  1. webpack 打包擴充套件
  2. css:sass支援、normalize.css、_mixin.scss、_variables.scss
  3. vw、rem佈局
  4. 多域名代理跨域設定
  5. eslint + standard設定
  6. 常用庫cdn引入
  7. 路由設計、登入攔截
  8. axios、api 設計
  9. vuex狀態管理

專案地址: vue-cli4-H5

demo打包地址: zhouyupeng.github.io/2020-03-19/…

以下是升級步驟和總結

一.首先,在全域性安裝最新的 Vue CLI:

npm install -g @vue/cli
# OR
yarn global add @vue/cli
複製程式碼

檢查安裝後的cli版本

vue -V  # 輸出:@vue/cli 4.x.x  說明@vue/cli 4安裝成功( vue cli 3的版本會輸出 3.x.x )
複製程式碼

我安裝後檢視一直是3.X版本就先解除安裝了vue/cli載新裝

二.在專案根目錄下執行

vue upgrade
複製程式碼
按提示升級即可

報錯及解決方法

WARN "css.modules" option in vue.config.js is deprecated now, please use "css.requireModuleExtension" instead.

css-loader升級v3後使用css.requireModuleExtension代替css.modules

vue-cli3專案 升級到 vue-cli4 的方法總結
css.loaderOptions全域性引入變數和mixin報錯

sass-loader v7 之前使用 data:' ', 之後使用prependData:' ', prependData: '@import "style/_mixin.scss"';替換以前的 data: '@import "style/_mixin.scss"';

vue-cli3專案 升級到 vue-cli4 的方法總結

升級ESLint後因為用的是standard不是Prettier報的錯, 升級後要另外安裝四個外掛

npm install eslint-plugin-import --save-dev
npm install eslint-plugin-node --save-dev
npm install eslint-plugin-promise --save-dev
npm install eslint-plugin-standard --save-dev
複製程式碼

刪除這個uglifyjs-webpack-plugin被官方已淘汰的外掛,改用webpack4.x自帶的去console配置

vue-cli3專案 升級到 vue-cli4 的方法總結

再改改升級過程中node提示的錯誤,升級就完成了~

相關文章