欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

React中使用Mobx的方法

 更新時間:2023年02月03日 10:09:48   作者:csdn-Allen  
Mobx是一個前端“狀態(tài)管理框架”,狀態(tài)管理就是將分布在各個組件、各個模塊中的狀態(tài)的變化,按照一定的規(guī)則,進(jìn)行統(tǒng)一的管理,這篇文章主要介紹了React中如何使用Mobx,需要的朋友可以參考下

一、Mobx前端狀態(tài)管理框架 基礎(chǔ)概念?

1. 什么是Mobx

Mobx是一個簡單、可擴(kuò)展的狀態(tài)管理庫

2. 什么是狀態(tài)管理?

狀態(tài)管理就是將分布在各個組件、各個模塊中的狀態(tài)的變化,按照一定的規(guī)則,進(jìn)行統(tǒng)一的管理。

3. 為什么需要狀態(tài)管理?

隨著組件數(shù)量的增加、系統(tǒng)的結(jié)構(gòu)越來越復(fù)雜。各大前端框架(React、Vue)提供的單向數(shù)據(jù)流的運轉(zhuǎn)方式,已經(jīng)不能滿足復(fù)雜系統(tǒng)的需求。

??鐚哟谓M件的數(shù)據(jù)共享
。兄弟組件的數(shù)據(jù)共享
。數(shù)據(jù)狀態(tài)的所有變化無法方便追溯

狀態(tài)管理的一般思想(Flux)

Flux的核心思想就是數(shù)據(jù)和邏輯永遠(yuǎn)單向流動。

Flux中的數(shù)據(jù)單向和React中的單向數(shù)據(jù)流有所不同,React中的單向數(shù)據(jù)流是指的組件間通信的數(shù)據(jù)流向只能是從父組件->子組件的這樣一種形式。而Flux思想中的單向數(shù)據(jù)流,指的是在應(yīng)用程序中,數(shù)據(jù)變化的過程和方向是單向的。

不難發(fā)現(xiàn),F(xiàn)lux其實是提供了一個數(shù)據(jù)中心化控制的方案。每個數(shù)據(jù)的變化都是在“動作”中去觸發(fā)。Flux架構(gòu)的特點主要是組件內(nèi)部不包含狀態(tài),所有狀態(tài)放到Store中統(tǒng)一管理,通過監(jiān)聽Action來具體執(zhí)行操作,這樣的好處在于:

。視圖組件不包含狀態(tài),很純粹,只包含了渲染邏輯和觸發(fā) action 這兩個職責(zé)。
。通過Action即可方便追溯Store的所有變化
。由于是中心化的數(shù)據(jù)管理,也就不存在兄弟/跨層級組件數(shù)據(jù)共享問題
市面上也有很多基于Flux的實現(xiàn),如Redux,Vuex等。

有哪些常見的實現(xiàn)?

Redux
Mobx
Vuex
Context (React Hook)

二、mobx的用法

1. 安裝 mobx

npm install mobx -S

2. 安裝 mobx 與 react 關(guān)聯(lián)工具

npm install mobx-react -S

3. 安裝兩個插件,以支持 ES6 的 mobx 語法

npm install @babel/plugin-proposal-decorators -D
npm install @babel/plugin-proposal-class-properties -D

4. 在 package.json 中配置上述兩個插件

"babel": [
  "plugins": [
	[
	  "@babel/plugin-proposal-decorators",
	  {
		"legacy": true
	  }
    ],
    [
	  "@babel/plugin-proposal-class-properties",
	  {
		"loose": true
	  }
    ]
  ]
]

5. ESLint 配置

"eslintConfig": {
  "parserOptions": {
	"ecmaFeatures": {
	  "legacyDecorators": true
	}
  }
}

6. 相關(guān)語法

。@observable:定義 state
。@computed:定義一個方法,當(dāng)依賴的 state 發(fā)生改變時,自動重新計算,自動地將最新的結(jié)果渲染至調(diào)用的地方
。@action:定義操作 state 的方法

7. 頁面結(jié)構(gòu)

在這里插入圖片描述

封裝store下的index文件

在這里插入圖片描述

homeStore.js封裝內(nèi)容:

在這里插入圖片描述

home頁面封裝內(nèi)容

在這里插入圖片描述

參考鏈接地址:
。https://blog.csdn.net/qq_44647809/article/details/123797408
。https://www.wddsss.com/main/displayArticle/350
。https://blog.csdn.net/weixin_43834567/article/details/118414211

到此這篇關(guān)于React中如何使用Mobx的文章就介紹到這了,更多相關(guān)React使用Mobx內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決React報錯useNavigate()?may?be?used?only?in?context?of?Router

    解決React報錯useNavigate()?may?be?used?only?in?context?of

    這篇文章主要為大家介紹了解決React報錯useNavigate()?may?be?used?only?in?context?of?Router,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • 在React中強(qiáng)制重新渲染的4 種方式案例代碼

    在React中強(qiáng)制重新渲染的4 種方式案例代碼

    這篇文章主要介紹了在React中強(qiáng)制重新渲染的4 種方式,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-12-12
  • React中事件的類型定義方式

    React中事件的類型定義方式

    這篇文章主要介紹了React中事件的類型定義方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • React學(xué)習(xí)之JSX與react事件實例分析

    React學(xué)習(xí)之JSX與react事件實例分析

    這篇文章主要介紹了React學(xué)習(xí)之JSX與react事件,結(jié)合實例形式分析了React中JSX表達(dá)式、屬性、嵌套與react事件相關(guān)使用技巧,需要的朋友可以參考下
    2020-01-01
  • React18中的useDeferredValue示例詳解

    React18中的useDeferredValue示例詳解

    這篇文章主要介紹了React18中的useDeferredValue的相關(guān)知識,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • React淺析Fragments使用方法

    React淺析Fragments使用方法

    這篇文章主要介紹了React Fragments使用方法,關(guān)于react Fragments,React中一個常見模式是為一個組件返回多個元素。Fragments 可以讓你聚合一個子元素列表,并且不在DOM中增加額外節(jié)點
    2022-12-12
  • 詳解如何在React中監(jiān)聽鼠標(biāo)事件

    詳解如何在React中監(jiān)聽鼠標(biāo)事件

    React可以通過使用React事件系統(tǒng)來監(jiān)聽鼠標(biāo)事件,您可以在React組件中通過使用特定的事件處理函數(shù)來注冊和處理鼠標(biāo)事件,本文小編講給大家詳細(xì)介紹一下如何在React中監(jiān)聽鼠標(biāo)事件,需要的朋友可以參考下
    2023-09-09
  • react顯示文件上傳進(jìn)度的示例

    react顯示文件上傳進(jìn)度的示例

    這篇文章主要介紹了react顯示文件上傳進(jìn)度的示例,幫助大家更好的理解和學(xué)習(xí)使用react,感興趣的朋友可以了解下
    2021-04-04
  • 一文帶你搞懂React中的useReducer

    一文帶你搞懂React中的useReducer

    useReducer 是除useState之外另一個與狀態(tài)管理相關(guān)的 hook,這篇文章主要為大家介紹了useReducer應(yīng)用的相關(guān)知識,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-06-06
  • 詳解react使用react-bootstrap當(dāng)輪子造車

    詳解react使用react-bootstrap當(dāng)輪子造車

    本篇文章主要介紹了詳解react使用react-bootstrap當(dāng)輪子造車,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-08-08

最新評論