欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

blocflutter的簡(jiǎn)單介紹

Flutter狀態(tài)管理(五):Redux

Flutter狀態(tài)管理系列:

十載的龍馬潭網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。網(wǎng)絡(luò)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整龍馬潭建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)從事“龍馬潭網(wǎng)站設(shè)計(jì)”,“龍馬潭網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

Flutter狀態(tài)管理(一):ScopedModel

Flutter狀態(tài)管理(二):Provider

Flutter狀態(tài)管理(三):BLoC(Business Logic Component)

Flutter狀態(tài)管理(四):ReactiveX之RxDart

Flutter狀態(tài)管理(五):Redux

有做過(guò)H5前端開發(fā)的朋友應(yīng)該很早就接觸過(guò)這個(gè),Redux在React/VUE中,與在Flutter/Dart中概念一樣,沒(méi)有任何區(qū)別;唯一的區(qū)別只是使用上的不同。

它主要由三部分組成:

下圖是一個(gè)完整的數(shù)據(jù)觸發(fā)及更新流程:

我們看到上面整個(gè)數(shù)據(jù)流,都是單向的,由View發(fā)起,最后到View的更新;

為啥這樣設(shè)計(jì)?

小節(jié)二介紹了Redux最基本的原理,但是,如何用Redux來(lái)做一些異步操作,比如:加載數(shù)據(jù)、請(qǐng)求API等?這里就引出來(lái)了Redux的中間件(Middleware),中間件能夠讓我們使得action在到達(dá)reducer之前,做些其它“動(dòng)作”!有了中間件,我們不但可以請(qǐng)求API,還可以改變action,使得分發(fā)到其它reducer中去;

上圖是有Middleware的流程圖。

Redux在Flutter中的使用與在JavaScript中的使用方式稍微有點(diǎn)不同,為啥?

因?yàn)镴avaScript是弱類型語(yǔ)言,而Dart是強(qiáng)類型語(yǔ)言,這就使得在JS中每個(gè)reducer可以獨(dú)立管理,而在Flutter中需要由一個(gè)大對(duì)象來(lái)管理!

無(wú)論在JS中還是在Flutter中,通常都將action、reducer、store各自建一目錄,放在redux目錄下,目錄結(jié)構(gòu)如下:

ReduxPage在build中,也可以直接用StoreBuilder(參考ReduxPage2中寫法),因?yàn)镾toreBuilder也是InheritedWidget。

正因?yàn)镽edux在Flutter中與在JS中不同,因此,在Flutter中,建議:

Flutter Bloc實(shí)現(xiàn)原理

1、繼承SingleChildStatelessWidget,就是一個(gè)widget,通過(guò)create 傳入一個(gè)Bloc對(duì)象

1、Bloc繼承自BlocBase,BlocBase中創(chuàng)建了StreamController對(duì)象,為多訂閱對(duì)象

其中onCounterEvent((event, emit)為初始化創(chuàng)建_eventController監(jiān)聽

2、Bloc中創(chuàng)建_eventController,為事件通知

3、BlocBase創(chuàng)建_stateController,為狀態(tài)刷新通知

4、add方法是執(zhí)行廣播通知

5、處理完數(shù)據(jù)之后執(zhí)行emit()方法,其中emit方法是stateController廣播

1、 BlocBuilder繼承自BlocBuilderBase,_BlocBuilderBaseState中build方法返回的是BlocListener

2、BlocListener繼承BlocListenerBase,_BlocListenerBaseState中_subscribe()添加監(jiān)聽stateController廣播通知

flutter_bloc使用解析

初始化問(wèn)題:這邊初始化是在bloc里,直接在構(gòu)造方法里面賦初值的,state中一旦變量多了,還是這么寫,會(huì)感覺(jué)極其難受,不好管理。需要優(yōu)化

如果進(jìn)行一個(gè)頁(yè)面,需要進(jìn)行復(fù)雜的運(yùn)算或者請(qǐng)求接口后,才能知曉數(shù)據(jù),進(jìn)行賦值,這里肯定需要一個(gè)初始化入口,初始化入口需要怎樣去定義呢?

首先對(duì)state進(jìn)行優(yōu)化,新增倆個(gè)方法:init()和clone()

init():這里初始化統(tǒng)一用init()方法去管理。

clone():這邊克隆方法,是非常重要的,一旦變量達(dá)到倆位數(shù)以上,就能深刻體會(huì)該方法是多么的重要。

定義一個(gè)與初始化state相對(duì)應(yīng)的init()初始化方法

這增加了初始化方法,請(qǐng)注意,如果需要進(jìn)行異步請(qǐng)求,同時(shí)需要將相關(guān)邏輯提煉一個(gè)方法,咱們?cè)谶@里配套Future和await就能解決在異步場(chǎng)景下同步數(shù)據(jù)問(wèn)題.

這里使用了克隆方法,可以發(fā)現(xiàn),我們只要關(guān)注自己需要改變的變量就行了,其它的變量都在內(nèi)部賦值好了,我們不需要去關(guān)注;這就大大的便捷了頁(yè)面中有很多變量,只需要變動(dòng)一倆個(gè)變量的場(chǎng)景。

view層增加了個(gè)初始化事件。初始化操作直接在創(chuàng)建的時(shí)候,在XxxBloc上使用add()方法就行了,就能起到進(jìn)入頁(yè)面,初始化一次的效果。

bloc的思想

觀察者模式的思想;觀察者(回調(diào)刷新控件)和被觀察者(產(chǎn)生相應(yīng)事件,添加事件,去通知觀察者),bloc層是處于觀察者和被觀察者中間的一層,我們可以在bloc里面搞業(yè)務(wù),搞邏輯,搞網(wǎng)絡(luò)請(qǐng)求;拿到Event事件傳遞過(guò)來(lái)的數(shù)據(jù),把處理好的、符合要求的數(shù)據(jù)返回給view層的觀察者就行了。

網(wǎng)頁(yè)名稱:blocflutter的簡(jiǎn)單介紹
網(wǎng)站地址:http://aaarwkj.com/article0/dssjcio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、動(dòng)態(tài)網(wǎng)站、網(wǎng)站收錄、網(wǎng)頁(yè)設(shè)計(jì)公司網(wǎng)站改版、營(yíng)銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管
国产精品三级玖玖玖电影| 亚洲精品a在线观看av| 亚洲av在线视频免费播放| 日韩成人手机视频在线观看| 亚洲精品一区二区牛仔裤| 国产精品一区二区三区播放| 开裆丝袜高跟啪啪高潮av| 日韩高清中文字幕在线| 最近免费欧美一级黄片| 欧美v日韩v亚洲综合国产高清| 欧美一区二区精品网站 | 粉嫩国产精品一区二区| 丰满人妻少妇精品一区二区三区| 白嫩少妇情久久密月久久| 日韩二区三区在线视频| 人妻熟妇一区二区三区成人| 亚洲av一区二区三区| 东京男人的天堂国产av| 色婷婷av一区二区三| 欧美aⅴ精品一区二区三区| 人妻天堂久久一区二区三区| 亚洲熟女av一区少妇| 双高干文男女主都很强| 国产精品亚洲精品日韩在线| 黄片无毛欧美在线观看| 乡村丰满的大屁股熟妇| 亚洲精品aa片在线观看国产| 日韩不卡永久免费视频观看| 色婷婷激一区二区三区| 日韩毛片中文字幕在线观看 | 欧美日韩综合精品无人区| 不卡av免费在线网址| 日本不卡一区二区在线播放| 综合激情丁香久久狠狠| 全部网站免费在线观看等| 久久久久久成人综合色| 青草免费在线播放视频| 亚洲激情精品成人在线| 深夜av免费在线观看| 在线观看亚洲av日韩av| 玩弄丰满熟妇留守妇女|