成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

【全棧React】第18天: Flux 簡(jiǎn)介

mtunique / 2003人閱讀

摘要:在方法中處理數(shù)據(jù)有三不同的角色派發(fā)器儲(chǔ)存視圖層我們的組件的主要思想是有一個(gè)單一源儲(chǔ)存他們只能通過(guò)觸發(fā)更新。這些操作負(fù)責(zé)調(diào)用派發(fā)器可以訂閱更改并相應(yīng)地更新自己的數(shù)據(jù)。與不同不使用派發(fā)器而是使用純函數(shù)來(lái)定義數(shù)據(jù)變異函數(shù)。

本文轉(zhuǎn)載自:眾成翻譯
譯者:iOSDevLog
鏈接:http://www.zcfy.cc/article/3812
原文:https://www.fullstackreact.com/30-days-of-react/day-18/

處理客戶端應(yīng)用中的數(shù)據(jù)是一項(xiàng)復(fù)雜的任務(wù)。今天我們正在研究一種處理Facebook提出的復(fù)雜數(shù)據(jù)的方法,稱為 Flux 體系結(jié)構(gòu)。

隨著應(yīng)用變得越來(lái)越復(fù)雜, 我們需要更好的數(shù)據(jù)處理方法。有了更多的數(shù)據(jù), 我們將有更多的記錄。

我們的代碼需要使用新功能處理更多的數(shù)據(jù)和應(yīng)用狀態(tài)。從異步服務(wù)器響應(yīng)到本地生成的、不同步的數(shù)據(jù), 我們不僅要跟蹤這些數(shù)據(jù), 還要將其與視圖保持正常的聯(lián)系。

認(rèn)識(shí)到對(duì)數(shù)據(jù)管理的需求, facebook 團(tuán)隊(duì)發(fā)布了一種處理數(shù)據(jù)的模式, 稱為 Flux。

今天, 我們將看一下Flux體系結(jié)構(gòu), 它是什么以及它存在的原因。

什么是flux

Flux是一種用于管理數(shù)據(jù)如何通過(guò)React應(yīng)用流動(dòng)的模式。正如我們所看到的, 使用React組件的首選方法是通過(guò)從一個(gè)父組件向它的子組件傳遞數(shù)據(jù)。Flux模式使此模型成為處理數(shù)據(jù)的默認(rèn)方法。

在Flux方法中處理數(shù)據(jù)有三不同的角色:

Dispatcher 派發(fā)器

Stores 儲(chǔ)存

Views (our components) 視圖層(我們的組件)

Flux的主要思想是, 有一個(gè)單一源 (Stores 儲(chǔ)存), 他們只能通過(guò)觸發(fā) actions 更新。這些操作負(fù)責(zé)調(diào)用派發(fā)器, Stores可以 訂閱 更改并相應(yīng)地更新自己的數(shù)據(jù)。

When a dispatch has been triggered, and the store updates, it will emit a change event which the views can rerender accordingly.當(dāng)發(fā)送已觸發(fā), 并且存儲(chǔ)更新時(shí), 它將發(fā)出一個(gè)更改事件, 視圖可以據(jù)此 重新渲染。

這似乎沒(méi)必要這么復(fù)雜, 但結(jié)構(gòu)使它難以置信地容易推理, 我們的數(shù)據(jù)來(lái)自哪里, 導(dǎo)致它的變化, 如何改變, 讓我們跟蹤特定的用戶流, 等等。

Flux 背后的關(guān)鍵理念是:

數(shù)據(jù)流向一個(gè)方向, 并完全保存在Stores中。

實(shí)現(xiàn)

雖然我們可以創(chuàng)建我們自己的flux實(shí)現(xiàn), 許多已經(jīng)創(chuàng)建了一些夢(mèng)幻般的庫(kù), 我們可以挑選。

Facebook"s flux

alt

nuclear-js

Fluxible

reflux

Fluxxor

flux-react

更多... 許多許多許多

插件

我們深入討論這個(gè)材料關(guān)于Flux, 使用庫(kù), 甚至實(shí)現(xiàn)我們自己的版本的Flux, 最適合我們。
查看 fullstackreact.com

它可能是相當(dāng)激烈的嘗試為我們的應(yīng)用選擇 正確 選項(xiàng)。每個(gè)人因?yàn)椴煌脑蚨加凶约旱奶攸c(diǎn), 是偉大的。然而, 在很大程度上, React社區(qū)已經(jīng)集中在使用另一種稱為Redux的flux工具。

Redux

Redux是一個(gè)小的庫(kù), 它的設(shè)計(jì)靈感來(lái)自flux模式, 但本身不是一個(gè)純粹的flux實(shí)現(xiàn)。它提供了相同的一般原則, 圍繞如何更新我們的應(yīng)用中的數(shù)據(jù), 但以略微不同的方式。

與Flux不同, Redux不使用派發(fā)器, 而是使用純函數(shù)來(lái)定義數(shù)據(jù)變異函數(shù)。它仍然使用Store(儲(chǔ)存)和Action(動(dòng)作), 可以直接地被栓到React組件。

3 主要原則的Redux我們將牢記在我們的應(yīng)用中實(shí)現(xiàn)Redux是:

使用純函數(shù)進(jìn)行更新 (in reducers 在歸約器中)

state 是只讀屬性

state是唯一的來(lái)源 (一個(gè)Redux的應(yīng)用只有一個(gè)Stores 儲(chǔ)存 )

Redux和Flux的一個(gè)大的區(qū)別是中間件的概念。Redux增加了中間件的想法, 我們可以使用它來(lái)操作我們接收到的操作, 無(wú)論是進(jìn)入還是從我們的應(yīng)用中。幾天后我們?cè)僭敿?xì)討論。

在任何情況下, 這是很多介紹的flux模式。明天, 我們將實(shí)際開(kāi)始移動(dòng)我們的數(shù)據(jù)使用Redux。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/84724.html

相關(guān)文章

  • 全棧ReactReact 30教程索引

    摘要:今天我們將討論創(chuàng)建組件的最終方案,即無(wú)狀態(tài)函數(shù)的純組件。今天我們正在研究一種處理提出的復(fù)雜數(shù)據(jù)的方法,稱為體系結(jié)構(gòu)。第天部署介紹今天,我們將探討部署我們的應(yīng)用所涉及的不同部分,以便外界可以使用我們的應(yīng)用。 本文轉(zhuǎn)載自:眾成翻譯譯者:iOSDevLog鏈接:http://www.zcfy.cc/article/3758原文:https://www.fullstackreact.com/3...

    appetizerio 評(píng)論0 收藏0
  • 全棧React11: 純組件

    摘要:今天我們將討論創(chuàng)建組件的最終方案,即無(wú)狀態(tài)函數(shù)的純組件。為了獲得更多的性能和簡(jiǎn)單性,同樣允許我們使用正常的函數(shù)創(chuàng)建純粹的,無(wú)狀態(tài)的組件。在中,功能組件被稱為一個(gè)參數(shù)的類似于構(gòu)造函數(shù)類,它們是它所調(diào)用的,以及組件樹(shù)的當(dāng)前。 本文轉(zhuǎn)載自:眾成翻譯譯者:iOSDevLog鏈接:http://www.zcfy.cc/article/3819原文:https://www.fullstackrea...

    Cciradih 評(píng)論0 收藏0
  • 全棧React19: 用Redux進(jìn)行數(shù)據(jù)管理

    摘要:歸約器函數(shù)負(fù)責(zé)返回應(yīng)用當(dāng)前全局狀態(tài)的表示形式。當(dāng)我們?cè)诖鎯?chǔ)上發(fā)送操作時(shí)將使用應(yīng)用的當(dāng)前狀態(tài)和導(dǎo)致?tīng)顟B(tài)更新的操作來(lái)調(diào)用此歸約器函數(shù)?;氐轿覀兊臍w約器我們可以檢查的動(dòng)作類型并采取適當(dāng)?shù)牟襟E創(chuàng)建下一個(gè)狀態(tài)。我們將處理動(dòng)作創(chuàng)造者中歸約器的副作用。 本文轉(zhuǎn)載自:眾成翻譯譯者:iOSDevLog鏈接:http://www.zcfy.cc/article/3811原文:https://www.ful...

    glumes 評(píng)論0 收藏0
  • 全棧React22: 測(cè)試簡(jiǎn)介

    摘要:我們將討論三種不同的軟件測(cè)試范例單元測(cè)試功能測(cè)試和集成測(cè)試。在中單元測(cè)試通常不需要瀏覽器可以快速運(yùn)行不需要寫(xiě)入斷言本身通常是簡(jiǎn)單而簡(jiǎn)潔的。集成測(cè)試最后我們將研究的最后一種測(cè)試是集成測(cè)試。 本文轉(zhuǎn)載自:眾成翻譯譯者:iOSDevLog鏈接:http://www.zcfy.cc/article/3809原文:https://www.fullstackreact.com/30-days-of...

    qc1iu 評(píng)論0 收藏0
  • 全棧React15: Promise簡(jiǎn)介

    摘要:使用承諾對(duì)象使我們有機(jī)會(huì)將異步操作的最終成功或失敗關(guān)聯(lián)到功能無(wú)論出于何種原因。例如在上面的示例中函數(shù)解析為值在成功完成時(shí)并在返回值這是另一個(gè)承諾上調(diào)用函數(shù)依此類推等等。這意味著我們只能返回一個(gè)承諾一次。 本文轉(zhuǎn)載自:眾成翻譯譯者:iOSDevLog鏈接:http://www.zcfy.cc/article/3814原文:https://www.fullstackreact.com/30...

    felix0913 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<