vue-cli的升級(jí)體驗(yàn)還是不錯(cuò)的,基本上大部分遷移的工作都幫你處理完了。
升級(jí)vue-cli 5
首先全局安裝最新版vue-cli
目前最新版是5.08,而且應(yīng)該早就不怎么維護(hù)了,畢竟現(xiàn)在都用vite創(chuàng)建項(xiàng)目了。
npm install -g @vue/cli
可以先看一下安裝的版本對(duì)不對(duì)
vue --version
執(zhí)行升級(jí)
vue upgrade
會(huì)幫你把相關(guān)的依賴升級(jí)到最新
比如我這里是升級(jí)了這幾個(gè)
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-plugin-router": "~4.5.0",
"@vue/cli-service": "~4.5.0",
各種配置文件都幫你處理好了,升級(jí)完,基本上沒(méi)什么報(bào)錯(cuò)。
02.升級(jí)vue 2.7
直接升級(jí)vue3是不可能的,而且也沒(méi)什么必要。因?yàn)槔享?xiàng)目的大部分代碼都是vue2,此時(shí)升級(jí)到vue2.7是比較合適的。
支持setup相關(guān)的語(yǔ)法,而且和vue2基本上是兼容的。
對(duì)typescript的支持也更好
還有,我明顯感覺(jué)到vue2.7以下的版本已經(jīng)沒(méi)什么必要用了,就像react的class寫(xiě)法,應(yīng)該棄用了,vue2.7提供vue3相似的api還是很不錯(cuò)的。
03.添加typescript
vue2的項(xiàng)目,沒(méi)幾個(gè)人會(huì)用ts的。但是一旦用習(xí)慣了ts,我覺(jué)得再用js很難受。
主要是ts支持一些最新的特性,還有類型推斷,
類型推斷我嘗試用jsdoc代替,但是我發(fā)現(xiàn)很麻煩,而且并沒(méi)有ts好用。
寫(xiě)這種老項(xiàng)目,用一些js新特性都用不了,很難受,比如空值合并運(yùn)算符??,在老項(xiàng)目里面就只能用||代替。
執(zhí)行下面的命令,安裝vue-cli的ts插件
vue add typescript
按照提示選擇就行。
其中有一項(xiàng)是把你所有的js轉(zhuǎn)為ts,我這里選擇不轉(zhuǎn),除非這個(gè)項(xiàng)目的代碼你都很熟悉,不建議用這個(gè),會(huì)出現(xiàn)一大堆ts報(bào)錯(cuò)。。。
之后我們需要在tsconfig里面添加下面的配置,這樣就可以在ts中導(dǎo)入js不報(bào)錯(cuò),
也不用定義聲明文件。。。
"allowJs": true,
"checkJs": false,