[web 前端] mobx教程(一)-mobx簡介


opy from : https://blog.csdn.net/smk108/article/details/84777649

 

Mobx是通過函數響應式編程使狀態管理變得簡單和可擴展的狀態管理庫。Mobx和Redux一樣,采用單向數據流管理狀態:通過action改變應用的state,state的改變觸發相應ui的更新,如下圖所示:

 

Mobx有如下幾個主要概念:

State:狀態,應該是應用依賴的最小狀態集,沒有任何多余的狀態,也不需要通過其他狀態計算而來的中間狀態;

Computed value:計算值,是根據state推導計算出來的值;

Reaction:響應,受state影響,會對state的變化做出一些更新ui、打印日志等反應;

Action:動作,建議是唯一可以修改狀態的方式;

結合單向數據流管理方式和上述概念,Mobx的主要流程如下圖所示:

 

 

Mobx整體是一個觀察者模式,存儲state的store是被觀察者,使用store的組件是觀察者。當action改變被觀察的state之后,computed value和reactin會自動根據state的改變做最小化更新,需要注意的是computed value采用延遲更新的方式,只有待更新的computed value被使用時才會被重新計算,不然,computed value不僅不會被重新計算,還會被自動回收。

MobX背后的哲學很簡單: 任何源自應用狀態的東西都應該自動地獲得。

 

Mobx與React是非常強力的一對組合,我在使用React+Mobx做開發時,感覺Mobx還是很好用的,並在我們FE團隊做了一個簡單的分享,推薦同事嘗試使用。當然,在開發中也遇到了一些問題,現在把我的總結分享給大家,隨時歡迎相關的技術交流。

接下來,我會按照如下的list進行總結,更新完某一篇后會在相應的title上添加超鏈接,同時會根據自己不斷使用的理解進行持續更新。

目錄如下:

簡介
Mobx主要概念
在React中使用Mobx
Mobx定義數據存儲
Mobx常見問題及解決方案(1)嚴格模式
Mobx常見問題及解決方案(2)不主動更新問題
Mobx工具函數
Mobx調試工具

 

---------------------
作者:smk108
來源:CSDN
原文:https://blog.csdn.net/smk108/article/details/84777649
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

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



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