前端兩大框架 vue 和 react 的區別


1. 設計思想

  vue: vue的官網介紹說vue是一種漸進式框架,采用自底向上增量開發的設計;

  react: 采用函數式編程,推崇純組件,數據不可變,單向數據流;

2. 編寫語法

  vue: 采用單文件組件格式,保留了html,css,js分離的寫法;

  react: 通過jsx渲染模板,html,css全部寫入js中;

3. 構建工具

  vue: 提供cli腳手架,可以非常容易的創建項目並進行配置;

  react: 使用creat-react-app,有局限行,不能完成某些配置;

4. 狀態管理

   vuex : $store 被直接注入到了組件實例中,因此可以比較靈活的使用,組件既可以dispatch action又可以commit updates。

    • 使用 dispatch 和 commit 提交更新
    • 通過 mapState 或者直接通過 this.$store 來讀取數據

   redux : 我們每一個組件都需要顯示的用 connect 把需要的 props 和 dispatch 連接起來,redux 中只能進行 dispatch,並不能直接調用 reducer 進行修改。

  兩者之間的差異

    • Redux 使用的是不可變數據,而Vuex的數據是可變的。Redux每次都是用新的state替換舊的state,而Vuex是直接修改

    • Redux 在檢測數據變化的時候,是通過 diff 的方式比較差異的,而Vuex其實和Vue的原理一樣,是通過 getter/setter來比較的(如果看Vuex源碼會知道,其實他內部直接創建一個Vue實例用來跟蹤數據變化)

 

React更偏向於構建穩定大型的應用,非常的科班化。

Vue更偏向於簡單迅速的解決問題,更靈活,不那么嚴格遵循條條框框。

因此也會給人一種大型項目用React,小型項目用 Vue 的感覺。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM