1. 程式人生 > >vue與react對比,相同之處與不同之處。

vue與react對比,相同之處與不同之處。

兩者都為當下主流框架

相同之處在於

一、使用 Virtual DOM

二、提供了響應式 (Reactive) 和元件化 (Composable) 的檢視元件。

三、將注意力集中保持在核心庫,而將其他功能如路由和全域性狀態管理交給相關的庫。

不同之處

一、在 React 應用中,當某個元件的狀態發生變化時,它會以該元件為根,重新渲染整個元件子樹。在 Vue 應用中,元件的依賴是在渲染過程中自動追蹤的,所以系統能精確知曉哪個元件確實需要被重渲染。

二、JSX vs Templates

在 React 中,所有的元件的渲染功能都依靠 JSX。JSX 是使用 XML 語法編寫 JavaScript 的一種語法糖。

使用 JSX 的渲染函式有下面這些優勢:
1. 你可以使用完整的程式語言 JavaScript 功能來構建你的檢視頁面。比如你可以使用臨時變數、JS 自帶的流程控制、以及直接引用當前 JS作用域中的值等等。
2. 開發工具對 JSX 的支援相比於現有可用的其他 Vue 模板還是比較先進的 (比如,linting、型別檢查、編輯器的自動完成)。


Vue 也提供了渲染函式,甚至支援 JSX。然而,預設推薦的還是模板。任何合乎規範的 HTML 都是合法的 Vue模板,這也帶來了一些特有的優勢:
1. 對於很多習慣了 HTML 的開發者來說,模板比起 JSX 讀寫起來更自然。這裡當然有主觀偏好的成分,但如果這種區別會導致開發效率的提升,那麼它就有客觀的價值存在。
2. 基於 HTML 的模板使得將已有的應用逐步遷移到 Vue 更為容易。
3. 這也使得設計師和新人開發者更容易理解和參與到專案中。
4. 甚至可以使用其他模板前處理器,比如 Pug 來書寫 Vue 的模板。

三、個人意見

  1. 社群生態庫上,react做的更好一些。
  2. 學習難度上,react學習曲線對於新手來說過於陡峭,vue更加平滑親和一些。