vue-cli升級(jí)5.x,支持ts和vue2.7踩坑

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,
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容