vue2和vue3的區(qū)別

創(chuàng)建項目

首先更新vue-cli到最新版本隧出。

npm install-g@vue/cli# OR yarn global add @vue/clivue create hello-vue3# select vue 3 preset

項目變化

vue2.x和vue3.x目錄結(jié)構(gòu)沒有什么變化譬正,只是一些使用方法變了福侈,而且默認(rèn)是安裝了TypeScript玷室。

vue2.x與vue3.x語法對比淺析

main.js

vue2.x使用import Vue from 'vue'欧募,然后使用new Vue()創(chuàng)建實例腋粥。vue3.x則是import {createApp} from 'vue'蚊荣,通過createApp()來創(chuàng)建實例了赤拒。

這就導(dǎo)致了很多的插件或UI組件庫不能使用秫筏,比如ElementUI、iView...

vue2.x與vue3.x語法對比淺析

router.js創(chuàng)建路由

vue3.x需要引入createRouter創(chuàng)建地址路由挎挖。createWebHashHistory對應(yīng)之前的hash这敬,createWebHistory對應(yīng)之前的history

vue2.x與vue3.x語法對比淺析

vuex狀態(tài)管理

vue3.x中狀態(tài)管理的創(chuàng)建方式變?yōu)榱?b>createStore蕉朵。代碼結(jié)構(gòu)更精簡合理崔涂。

vue2.x與vue3.x語法對比淺析

Composition API

這個是vue3.x變化最大的地方,vue2.x數(shù)據(jù)存放在data墓造,方法在methods堪伍,通過this去調(diào)用。但是在vue3.x這些都沒有了觅闽,所有的代碼全部都在setup里面實現(xiàn)帝雇,你頁面需要哪些方法,就要在當(dāng)前頁引入即可蛉拙。

vue2.x與vue3.x語法對比淺析

生命周期

vue3.x的生命周期也發(fā)生了一些變化尸闸,大家可以看下面這張圖。

vue2.x與vue3.x語法對比淺析

在項目中具體的使用方法孕锄。

vue2.x與vue3.x語法對比淺析

使用介紹

setup

setup有兩個參數(shù) props 和 context

props:接受父組件傳的值

context:vue3.x里面沒有this吮廉,提供了一個context上下文屬性,你可以通過這個屬性去獲取進(jìn)行 一些 vue2.x 用this實現(xiàn)的操作

vue2.x與vue3.x語法對比淺析

ref聲明基礎(chǔ)數(shù)據(jù)類型

創(chuàng)建一個響應(yīng)式的基礎(chǔ)類型畸肆,只能監(jiān)聽number宦芦、String、boolean等簡單的類型轴脐,該屬性一旦發(fā)生更改调卑,都會被檢測到。

<template>? <div>{{count}}</div>? ? ? ? ? ? // 1</template>import{ref}from"vue"setup(){constcount=ref(0)count.value++//必須要加.valuereturn{count//一定要return 出去}}

reactive聲明響應(yīng)式數(shù)據(jù)對象

<template>? <div>{{count.name}}</div>? ? ? ? ? ? // 857</template>import{reactive}from"vue"setup(){constcount=reactive({name:'369'})count.name='857'return{count}}

computed計算屬性

computed 和vue2.x差不多大咱,只是使用前要先引入恬涧。

vue2.x與vue3.x語法對比淺析

watchEffect監(jiān)聽

通過ref或者reactive去創(chuàng)建多個響應(yīng)式的值,當(dāng)任何一個值發(fā)生改變的時候碴巾,立即觸發(fā)這個函數(shù)溯捆。

vue2.x與vue3.x語法對比淺析

watchEffect方法會返回一個stop handle停止監(jiān)聽。

vue2.x與vue3.x語法對比淺析

router 路由

vue3.x的router和route屬性也有了很大的變化厦瓢,在vue2.x中使用this.router路由跳轉(zhuǎn)提揍,

this.route獲取當(dāng)前頁面路由信息啤月。

// 路由跳轉(zhuǎn)import{useRouter}from"vue-router";setup(){constrouter=useRouter()router.push('/path')}// 獲取當(dāng)前頁面路由信息import{useRoute}from"vue-router";setup(){constroute=useRoute()console.log(route)//這里的route相當(dāng)于vue2.x中的this.$route}

鏈接來自于:http://www.reibang.com/p/4e7ba9e93402

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市碳锈,隨后出現(xiàn)的幾起案子顽冶,更是在濱河造成了極大的恐慌,老刑警劉巖售碳,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件强重,死亡現(xiàn)場離奇詭異,居然都是意外死亡贸人,警方通過查閱死者的電腦和手機(jī)间景,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來艺智,“玉大人倘要,你說我怎么就攤上這事∈穑” “怎么了封拧?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長夭问。 經(jīng)常有香客問我泽西,道長,這世上最難降的妖魔是什么缰趋? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任捧杉,我火速辦了婚禮,結(jié)果婚禮上秘血,老公的妹妹穿的比我還像新娘味抖。我一直安慰自己,他們只是感情好灰粮,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布仔涩。 她就那樣靜靜地躺著,像睡著了一般粘舟。 火紅的嫁衣襯著肌膚如雪熔脂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天蓖乘,我揣著相機(jī)與錄音,去河邊找鬼韧骗。 笑死嘉抒,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的袍暴。 我是一名探鬼主播些侍,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼隶症,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了岗宣?” 一聲冷哼從身側(cè)響起蚂会,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎耗式,沒想到半個月后胁住,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡刊咳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年彪见,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片娱挨。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡余指,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出跷坝,到底是詐尸還是另有隱情酵镜,我是刑警寧澤,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布柴钻,位于F島的核電站淮韭,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏顿颅。R本人自食惡果不足惜缸濒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望粱腻。 院中可真熱鬧庇配,春花似錦、人聲如沸绍些。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽柬批。三九已至啸澡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間氮帐,已是汗流浹背嗅虏。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留上沐,地道東北人皮服。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親龄广。 傳聞我的和親對象是個殘疾皇子硫眯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 1:vue2和vue3雙向數(shù)據(jù)綁定原理發(fā)生了改變 vue2的雙向數(shù)據(jù)綁定是利用ES5的一個APIObject.de...
    隨筆記呀閱讀 26,347評論 0 71
  • 前言 版本換代需要我們花更多的時間適應(yīng)學(xué)習(xí),但升級是為了更好择同,讓你的前端項目更快更好更緊跟前端時代两入。 vue2.0...
    鋒叔閱讀 52,736評論 0 22
  • Vue 3 的 Template 支持多個根標(biāo)簽,Vue 2 不支持 Vue 3 有 createApp()敲才,而 ...
    sweetBoy_9126閱讀 30,425評論 0 15
  • Vue3.0的優(yōu)勢 性能比Vue2.x快1.2~2倍 按需編譯裹纳,體積比Vue2.x更小 組合API(類似React...
    強(qiáng)某某閱讀 1,546評論 0 5
  • 談一下你對 MVVM 的認(rèn)識 https://blog.csdn.net/Dora_5537/article/de...
    Aniugel閱讀 9,614評論 1 91