一. 類似之處css
二. 不一樣之處html
React 組件的狀態有變化時,它會以該組件爲根,從新渲染整個組件子樹,須要使用PureComponent,或是實現shouldComponentUpdate(15)、getDerivedStateFromProps(16)方法進行優化前端
Vue 使得開發者再也不須要考慮此類優化,從而可以更好地專一於應用自己。react
React 它是函數式的思想,把組件設計成純組件,狀態和邏輯經過參數傳入,因此在react中,是單向數據流,推崇結合immutable來實現數據不可變。在setState以後會從新走渲染的流程,若是shouldComponentUpdate(15)返回的是true或getDerivedStateFromProps(16)返回的不是null,就繼續渲染,若是返回了false,就不會從新渲染,PureComponent就是重寫了shouldComponentUpdate,而後在裏面做了props和state的淺層對比api
Vue 它是響應式的思想,也就是基因而數據可變的,經過對每個屬性創建Watcher來監聽,當屬性變化的時候,響應式的更新對應的虛擬domdom
渲染方式函數
React 他的思路是all in js,經過js來生成html,設計了jsx,經過js來操做css Vue 提供了渲染函數,同時也支持JSX,默認推薦的仍是模板,任何合乎規範的 HTML 都是合法的Vue模板
React 是類式的寫法,api較少組件化
Vue 是聲明式的寫法,經過傳入各類options,api和參數較多性能
React 經過高階組件來擴展優化
Vue 經過Mixins來擴展