React的基本功能差不多看完了,順帶讀了一點Vue的基礎語法。其實為了更好的理解它們。
1. 功能上Vue應該是比React更強大的,因為Vue不僅支持傳統的以html為主線的模板引擎,同時也支持React發明的jsx。我沒有仔細去看vue的jsx,所以沒有辦法比較它與react的優劣,不清楚vue jsx是否有對應的高階組件,hooks等,也不清楚vue jsx是否有更牛的功能。
2. 學習難度上,其實react更容易學。網上談到vue和react時,總是說react的學習曲線陡峭,這是非常不負責任的。jsx基本沒有引入任何新的語法,它的語法只有js,何來的學習曲線陡峭?反觀vue的模板引擎,你是真的需要記新的語法的,即使你有其它模板引擎的經驗。比如v-bind,v-if,v-for,v-module等等。這些在react里面都是js做的,不需要新的語法,js一個箭頭就相當於v-module的雙向綁定了。同時vue還需要引進計算屬性和偵查屬性,原因是html模板里面沒有辦法使用所有的js變量,只能把他們放在計算屬性里面加以使用,而在jsx里面,這都不是事,js都可以解決。這還不包含你學習vue的jsx的時間。
3. 效率上,這個我沒有辦法仔細對比,引用vue的的文檔里面的話:
在 Vue 應用中,組件的依賴是在渲染過程中自動追蹤的,所以系統能精確知曉哪個組件確實需要被重渲染
這一點Vue顯然比react更牛逼,react的組件你如果想阻止它做無用的渲染,需要你自己去控制,這確實是react開發者一個頭疼的問題。