react vue angular的淺談

一歪架、先來說說大家比較熟的vue把,你們知道vue1-vue2-vue3都經(jīng)歷了什么嗎?

1、vue2比vue1的改進

生命周期的改變:?beforeCompile 移除伶唯, 使用 created 替代憨攒,compiled 移除世杀,使用 mounted 替換等。肝集。瞻坝。
語法:新數(shù)組語法 (value, index) in list,并丟棄 $index 和 $key杏瞻。過濾器廢棄所刀,不再這樣寫?<div v-for="el in list | limitBy 10">{{ el }}</div>,改而在方法里自己做好分割捞挥。圍繞 DOM 的實例方法vm.$appendTo 移除浮创。?$dispatch 和 $broadcast 廢棄,前者用于向上級派發(fā)事件砌函,只要是它的父級(一級或多級以上)斩披,都可以在組件內(nèi)通過?$on?(或 events,2.x 已廢棄)監(jiān)聽到讹俊,后者相反雏掠,是由上級向下級廣播事件的。

2劣像、vue3比vue2的改進

使用了 proxy 替代 Object.defineProperty:Vue2 的雙休數(shù)據(jù)綁定是使用 Object.defineProperty 的 getter 和 setter乡话。 但是,Vue 3 將使用 ES2015 Proxy 作為其觀察者機制耳奕。 這消除了以前存在的警告绑青,使速度加倍,并節(jié)省了一半的內(nèi)存開銷屋群。而為什么使用 Proxy 替代 Object.defineProperty闸婴?Proxy 可以劫持整個對象,并返回一個新的對象芍躏。Proxy 不僅可以代理對象邪乍,還可以代理數(shù)組,還可以代理動態(tài)增加的屬性,節(jié)省內(nèi)存庇楞,速度加倍榜配。新增了hook api setup(),? vue3重寫虛擬DOM,新增靜態(tài)標(biāo)記優(yōu)化插槽生成吕晌,靜態(tài)樹提升蛋褥,靜態(tài)屬性提升【Σ担總結(jié)來說烙心,vue 3 按需編譯體積比2.0更小,性能也快1.2-2倍乏沸,它已經(jīng)能做到Dom diff 的時候淫茵,只對有變量的區(qū)域遍歷,靜態(tài)的節(jié)點直接復(fù)用對象不需要 diff蹬跃,更好的TS支持更先進的組件等等痘昌。。炬转。

二、react16.X-react17
react16原理算灸,babel-loader會預(yù)編譯JSX為React.createElement(...)

react17原理扼劈,React 17中的 JSX 轉(zhuǎn)換不會將 JSX 轉(zhuǎn)換為 React.createElement,而是自動從 React 的 package 中引入新的入口函數(shù)并調(diào)用菲驴。另外此次升級不會改變 JSX 語法荐吵,舊的 JSX 轉(zhuǎn)換也將繼續(xù)工作。在React 17中赊瞬,React將不再在后臺的文檔級別附加事件處理程序先煎。取而代之的是,它將它們附加到渲染您的React樹的根DOM容器:

const rootNode=document.getElementById('root');ReactDOM.render(, rootNode);

react hook :useState()巧涧、useEffect()薯蝎、useRef()等等。谤绳。占锯。是16.8以后新增的特性,他能讓你在不使用class 組件的情況下也能用class組件的特性

缩筛、angular

Angular對我來說也一直是停留在1.0消略,2.0的時代。如果你不是經(jīng)常使用angular的話瞎抛,當(dāng)你重新關(guān)注它的時候艺演,你會發(fā)現(xiàn)它的最新版本已經(jīng)是Anguar 9了,要知道之前用了8年才發(fā)布了一個主版本,而現(xiàn)在4年時間已經(jīng)發(fā)布了8個版本胎撤。是因為現(xiàn)在Angular采用了語義本版本控制晓殊,每個6個月就會升級一個大版本。Angular 是一個由 Google維護的開源JavaScript框架哩照,用于在HTML和JavaScript中構(gòu)建Web應(yīng)用程序挺物,Angular最顯著的特征就是其整合性。涵蓋了M飘弧、V识藤、C/VM等各個層面,不需要組合次伶、評估其它技術(shù)就能完成大部分前端開發(fā)任務(wù)痴昧。Angular一些用法再上一篇小結(jié)果過了,感興趣可以看一看冠王。在這里就不細說了赶撰,我本人用的少可能大部分api都需要參考文檔。柱彻。豪娜。

四、3者的區(qū)別在哪呢哟楷?

Vue.js的特性如下:

1.輕量級的框架瘤载,易用

2.雙向數(shù)據(jù)綁定

3.指令化

4.組件化

<1>、與angularjs的區(qū)別

?相同點:

都支持指令:內(nèi)置指令和自定義指令卖擅。

都支持過濾器:內(nèi)置過濾器和自定義過濾器鸣奔。

都支持雙向數(shù)據(jù)綁定。

都不支持低端瀏覽器惩阶。

? ? 不同點:

? ? ? 1.更簡單易用挎狸,AngularJS的學(xué)習(xí)成本高,比如增加了Dependency Injection特性断楷,而Vue.js本身提供的API都比較簡單锨匆、直觀。

2.更靈活冬筒,比起 Angular更少專制统刮,它能讓你按照自己想要的方式構(gòu)建應(yīng)用,而非啥都的按照 Angular 框架如此账千。

? 3.性能更突出侥蒙,vue依賴追蹤的觀察系統(tǒng)并且異步列隊更新,所有的數(shù)據(jù)變化都是獨立地觸發(fā)匀奏。

<2>鞭衩、與React的區(qū)別

相同點:

react采用特殊的JSX語法,Vue.js在組件開發(fā)中也推崇編寫.vue特殊文件格式,對文件內(nèi)容都有一些約定论衍,

兩者都需要編譯后使用瑞佩。

中心思想相同:一切都是組件,組件實例之間可以嵌套坯台。

都提供合理的鉤子函數(shù)炬丸,可以讓開發(fā)者定制化地去處理需求。

都不內(nèi)置列數(shù)AJAX蜒蕾,Route等功能到核心包稠炬,而是以插件的方式加載。

在組件開發(fā)中都支持mixins的特性咪啡。

不同點:

? ? ? 1.性能更好:

Vue性能上更有優(yōu)勢首启,因為 Vue 的 Virtual DOM 實現(xiàn)相對更為輕量一些,整體大小比react.js更小更輕便

? ? ? 2.更易學(xué)更簡單:

react.JS 彩用SX語法撤摸,對語大部分工程師入手比較困難毅桃,需要要大量的時間去學(xué)習(xí)適應(yīng)這種新語法的形式,vue采用DOM模板的方法准夷,易看易用

? ? ? 3.優(yōu)化更好:react某個組件的狀態(tài)發(fā)生變化時钥飞,它會以該組件為根,重新渲染整個組件子樹衫嵌。如要避免不必要的子組件的重渲染读宙,你需要在所有可能的地方使用 PureComponent,或是手動實現(xiàn) shouldComponentUpdate 方法渐扮。vue都不用關(guān)心這些。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掖棉,一起剝皮案震驚了整個濱河市墓律,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌幔亥,老刑警劉巖耻讽,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異帕棉,居然都是意外死亡针肥,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門香伴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來慰枕,“玉大人,你說我怎么就攤上這事即纲【甙铮” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蜂厅。 經(jīng)常有香客問我匪凡,道長,這世上最難降的妖魔是什么掘猿? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任病游,我火速辦了婚禮,結(jié)果婚禮上稠通,老公的妹妹穿的比我還像新娘衬衬。我一直安慰自己,他們只是感情好采记,可當(dāng)我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布佣耐。 她就那樣靜靜地躺著,像睡著了一般唧龄。 火紅的嫁衣襯著肌膚如雪兼砖。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天既棺,我揣著相機與錄音讽挟,去河邊找鬼。 笑死丸冕,一個胖子當(dāng)著我的面吹牛耽梅,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播胖烛,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼眼姐,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了佩番?” 一聲冷哼從身側(cè)響起众旗,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎趟畏,沒想到半個月后贡歧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡赋秀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年利朵,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片猎莲。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡绍弟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出著洼,到底是詐尸還是另有隱情晌柬,我是刑警寧澤姥份,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站年碘,受9級特大地震影響澈歉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜屿衅,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一埃难、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧涤久,春花似錦涡尘、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蔗彤,卻和暖如春川梅,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背然遏。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工贫途, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人待侵。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓丢早,卻偏偏與公主長得像,于是被迫代替她去往敵國和親秧倾。 傳聞我的和親對象是個殘疾皇子怨酝,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,440評論 2 359

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