區別:1、React是透過JSX渲染模板;而Vue是透過一種拓展的HTML語法進行渲染。 2.Vue在渲染過程中,會追蹤每一個元件的依賴關係,不需要重新渲染整個元件樹;而React在應用程式的狀態被改變時,全部子元件都會重新渲染。
vue和react渲染的區別
1、模板渲染方式的不同
在表層上,模板的語法不同,React是透過JSX渲染模板。而Vue是透過一種拓展的HTML語法來渲染,但其實這只是表面現象,畢竟React並不必須依賴JSX。
在深層上,模板的原理不同,這才是他們的本質區別:React是在元件JS程式碼中,透過原生JS實作範本中的常見語法,例如插值,條件,循環等,都是透過JS語法實現的,更加純粹更加原生。而Vue是在和元件JS程式碼分離的單獨的模板中,透過指令來實現的,例如條件語句就需要 v-if 來實現對這一點,這樣的做法顯得有些獨特,會把HTML弄得很亂。
舉個例子,說明React的好處:react中render函數是支援閉包特性的,所以我們import的元件在render中可以直接呼叫。但在Vue中,由於模板中使用的資料都必須掛在this 上進行一次中轉,所以我們import 一個組件完了之後,還需要在components 中再聲明下,這樣顯然是很奇怪但又不得不這樣的做法。
2、渲染過程不同
Vue可以更快地計算出Virtual DOM的差異,這是由於它在渲染過程中,會追蹤每個元件的依賴關係,不需要重新渲染整個元件樹。
React在應用程式的狀態被改變時,全部子元件都會重新渲染。透過shouldComponentUpdate這個生命週期方法可以進行控制,但Vue將此視為預設的最佳化。
如果應用程式中互動複雜,需要處理大量的UI變化,那麼使用Virtual DOM是一個好主意。如果更新元素不頻繁,那麼Virtual DOM並不一定適用,效能很可能不如直接操控DOM。
相關推薦:
更多程式相關知識,請造訪:程式設計教學! !
以上是vue和react渲染的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!