區別:1、vue是雙向綁定,react不是;2、React使用JSX,Vue使用HTML模板建立視圖;3、React用Flux來管理狀態,Vue用Vuex;4、React用Create React App腳手架,Vue使用vue-cli。
本教學操作環境:windows7系統、vue2.9.6&&react16版,DELL G3電腦。
React.js與Vue.js比較
|
React |
Vue |
類型 |
JavaScript函式庫 | ##JavaScript程式庫 |
適用於 | Web和Native的理想選擇 | 主要專注於Web開發,但它是為了支援其他平台的前進而寫的 |
#開發人員 | Facebook社群(由Jordan Walke創建) | Evan You |
首次發布 | 2013年3月 | 2014年2月 |
寫入 | JavaScript | JavaScript |
跨平台開發 | React的React Native是一個成熟且廣泛使用的原生應用程式平台 | Vue的Weex仍在不斷發展,旨在提供順暢的開發體驗 |
學習曲線 | 陡峭的學習曲線,需要深厚的知識 | #簡單的學習曲線,基於HTML的模板使其熟悉 |
人氣 | React在GitHub上最熱門的Javascript項目清單中排名第二 | Vue.js排名第一,是2017年最時尚的項目,年內在GitHub上新增了超過40,000顆星 |
可重複使用性 | 僅CSS | 最大可重複使用性 |
#效能 | 同樣快速 | 同樣快速 |
#GitHub上的貢獻者##1201 |
189 |
|
模型
虛擬DOM(文件物件模型) |
基於虛擬DOM HTML的範本 |
|
功能
可用作單一頁面或行動應用程式開發的基礎 |
能夠為進階單頁應用程式提供動力的網頁應用程式框架 |
|
簡單
React比Vue更複雜 |
Vue比React更簡單 |
|
值得注意的特性
| 使用道具進行單向資料綁定有狀態元件虛擬DOM 生命週期方法 JSX(JavaScript XML) HTML以外的架構#基於HTML的模板 | 反應性元件(將整個應用程式分割為小型,自我包含,通常可重複使用的元件)轉換路由*整合
| ##Bootstrap應用程式
CRA(建立React應用程式) | Vue-cli |
| #react和vuejs的區別
1、資料綁定
Vue中有關數據綁定的部分
vue是雙向綁定, Vue.js 最核心的功能有兩個,一是響應式的資料綁定係統,二是元件系統。所謂雙向綁定,指的是vue實例中的data與其渲染的DOM元素的內容保持一致,無論誰被改變,另一方會相應的更新為相同的資料。這是透過設定屬性存取器來實現的。
在vue中,與資料綁定有關的有插值表達式、指令系統、*Class和Style、事件處理器和表單空間、ajax請求和計算屬性
## react沒有資料雙向綁定
react是單向資料流react中透過將state(Model層)與View層資料進行雙向綁定達資料的即時更新變化,具體來說就是在View層直接寫JS程式碼Model層中的資料拿過來渲染,一旦像表單操作、觸發事件、ajax請求等觸發資料變化,則進行雙同步
2、重新渲染和優化
當你比較React和Vue時,速度不能成為決定哪個更好的重要比較因素。在效能方面,讓我們考慮重新渲染功能。當元件的狀態改變時,React的機制會觸發整個元件樹的重新呈現。您可能需要使用額外的屬性來避免不必要地重新渲染子元件。 雖然Vue的重新渲染功能是開箱即用的,但Vue提供了優化的重新渲染,其中系統在渲染過程中追蹤依賴關係並相應地工作。 重新渲染Vue是最顯著的特徵,使其成為全世界開發人員廣泛接受的框架。
3、JSX與HTML
#React使用JSX - 聲明性JavaScript XML,讓開發人員可以利用JavaScript的強大功能編寫元件,而Vue.js使用HTML模板建立視圖。 基於HTML的範本更熟悉,在改進現有應用程式以獲得Vue反應性功能的好處方面也是有益的。這為初學者和有經驗的專業人士提供了一個簡單的學習曲線,因為他們中的大多數人都以這種或那種方式使用HTML。
4、路由和狀態管理解決方案
#在像React和Vue這樣的基於元件的框架中,當您開始擴展應用程序時,需要更加關注狀態管理和資料流。這是因為有許多組件相互交互並共享數據。 在這種情況下,React提供了一種稱為Flux / Redux架構的創新解決方案,它代表單向資料流,是著名MVC架構的替代方案。現在,如果我們考慮Vue.js框架,就會有一個名為Vuex的更高級架構,它整合到Vue中並提供無與倫比的體驗。
5、建築工具
React和Vue都有一個非常好的開發環境。只需很少或沒有配置,您就可以創建應用程序,使您能夠使用最新的實踐和模板。在React中,有一個Create React App(CRA),在Vue中,它是vue-cli。 這兩種引導工具都傾向於為您提供舒適靈活的開發環境,並為您提供開始程式設計的出色起點。 相關推薦:《vue.js教學》
以上是react和vuejs有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!