Fish-Redux的SourceFlowAdapter用法

原文鏈接:http://www.fackyou.org/archives/flutter/2020062842.html

Fish-Redux的Adapter

不得不說艰额,F(xiàn)ish-Redux的Adapter是個大坑枉侧,為什么這么說呢?倒不是因?yàn)檫@個Adapter有多不合理或者源代碼多么辣雞,當(dāng)然阿里出品必屬精品(如果阿里的HR少俠看到我在吹阿里授翻,請務(wù)必給我發(fā)Offer),而是因?yàn)楣俜轿臋nTM遲遲不更新襟衰!你悶頭寫代碼兔辅,更新框架,不更新文檔氓扛,我們怎么用翱莘摇?

三種Adapter類型

官方設(shè)置了三種Adapter類型(其實(shí)是四種采郎,一種被刪了)分別是:

 1. StaticFlowAdapter
 2. DynamicFlowAdapter
 3. CustomAdapter

其中StaticFlowAdapter是以Map數(shù)據(jù)類型驅(qū)動的千所,DynamicFlowAdapter是以Model數(shù)組類型驅(qū)動的,而CustomAdapter就厲害了蒜埋,想怎么驅(qū)動就怎么驅(qū)動淫痰。

契機(jī)

為什么我要介紹一下SourceFlowAdapter這種類型呢?是因?yàn)楫?dāng)我用的是Model數(shù)組類型整份,而當(dāng)我在代碼里敲上DynamicFlowAdapter的時候它提示我:

'DynamicFlowAdapter' is deprecated and shouldn't be used.
Try replacing the use of the deprecated member with the replacement.

我可去TM的吧待错,刪了也不在文檔里說一下!然后根據(jù)提示我就得換成SourceFlowAdapter烈评,那么問題來了火俄,這個SourceFlowAdapter文檔里提都沒提,我該怎么寫讲冠?
翻遍谷歌度娘瓜客,實(shí)在不容易,讓我找到了一篇教程,不過寫的不是很透徹谱仪,我略補(bǔ)一下玻熙,基本上照著我下面的方法就可以復(fù)現(xiàn)出來。坐好了芽卿,我要 開車 開始了揭芍!

使用方法(里面涉及了我項(xiàng)目里的命名,請換成你的)

新建一個adapter.dart文件卸例,然后按照格式

class FollowAdapter extends SourceFlowAdapter<FollowState> {
  static const friendItem = 'friend';
  FollowAdapter()
      : super(pool: <String, Component<Object>>{
          friendItem: FollowItemComponent()
        });
}

這里是定義一個FollowAdapter称杨,子項(xiàng)對應(yīng)一個組件(component),這個子項(xiàng)的格式是<String, Component<Object>的筷转,組件要預(yù)先建好姑原!怎么建你心里沒點(diǎn)數(shù)嗎?這里為什么要定一個公共變量呢呜舒,后面會用到锭汛。
接下來修改state.dart文件。
在你的State類里面擴(kuò)展一個MutableSource袭蝗,寫法如下:

extends MutableSource

寫哪用我教嗎唤殴?
然后補(bǔ)足幾個覆寫方法:

1. getItemData
2. getItemType
3. itemCount
4. setItemData

能直接生成的就直接生成哈!
挨個說一下作用:

1. getItemData
獲取list的item數(shù)據(jù)的方法到腥,需要返回值朵逝,返回值必須是component的state

2. getItemType
獲取list的item類型,以便對應(yīng)到component乡范。這里推薦直接返回FollowAdapter.friendItem這個就是剛剛adapter.dart里的公共變量配名,省得寫錯找半天問題找不到!

3. itemCount
這里返回list的行數(shù)晋辆,直接返回數(shù)組的length就可以了渠脉。

4. setItemData
這個沒啥用,就是如果子集修改了數(shù)據(jù)可以修改state里的數(shù)據(jù)(可能是瓶佳,我沒用到芋膘,瞎理解的,你用到了麻煩給我講一下)

然后修改component.dart霸饲。這里就簡單了索赏,在adapter里面加上一條NoneConn<FollowState>() + FollowAdapter()從名字上看就能看出怎么修改成你自己項(xiàng)目的了。

最后在view.dart里加入listview贴彼,這個比較固定,我直接貼代碼了:

ListView.builder(
    itemBuilder: viewService.buildAdapter().itemBuilder,
    itemCount: viewService.buildAdapter().itemCount,
)

只要你數(shù)據(jù)兩邊一致埃儿,就可以重現(xiàn)我的成功案例器仗,如果你無法重現(xiàn),請到原鏈接留言!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末精钮,一起剝皮案震驚了整個濱河市威鹿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌轨香,老刑警劉巖忽你,帶你破解...
    沈念sama閱讀 216,997評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異臂容,居然都是意外死亡科雳,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評論 3 392
  • 文/潘曉璐 我一進(jìn)店門脓杉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來糟秘,“玉大人,你說我怎么就攤上這事球散∧蜃” “怎么了?”我有些...
    開封第一講書人閱讀 163,359評論 0 353
  • 文/不壞的土叔 我叫張陵蕉堰,是天一觀的道長凌净。 經(jīng)常有香客問我,道長屋讶,這世上最難降的妖魔是什么冰寻? 我笑而不...
    開封第一講書人閱讀 58,309評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮丑婿,結(jié)果婚禮上性雄,老公的妹妹穿的比我還像新娘。我一直安慰自己羹奉,他們只是感情好秒旋,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著诀拭,像睡著了一般迁筛。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上耕挨,一...
    開封第一講書人閱讀 51,258評論 1 300
  • 那天细卧,我揣著相機(jī)與錄音,去河邊找鬼筒占。 笑死贪庙,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的翰苫。 我是一名探鬼主播止邮,決...
    沈念sama閱讀 40,122評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼这橙,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了导披?” 一聲冷哼從身側(cè)響起屈扎,我...
    開封第一講書人閱讀 38,970評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎撩匕,沒想到半個月后鹰晨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,403評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡止毕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評論 3 334
  • 正文 我和宋清朗相戀三年模蜡,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片滓技。...
    茶點(diǎn)故事閱讀 39,769評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡哩牍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出令漂,到底是詐尸還是另有隱情膝昆,我是刑警寧澤,帶...
    沈念sama閱讀 35,464評論 5 344
  • 正文 年R本政府宣布叠必,位于F島的核電站荚孵,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏纬朝。R本人自食惡果不足惜收叶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望共苛。 院中可真熱鬧判没,春花似錦、人聲如沸隅茎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽辟犀。三九已至俏竞,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間堂竟,已是汗流浹背魂毁。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留出嘹,地道東北人席楚。 一個月前我還...
    沈念sama閱讀 47,831評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像税稼,于是被迫代替她去往敵國和親烦秩。 傳聞我的和親對象是個殘疾皇子刁赦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評論 2 354