Flutter中Provider4.0的基本使用

1、新建狀態(tài)管理類

class CategoryState with  ChangeNotifier{
  
  List<BxMallSubDto> _titleList = [];

  get titleList => _titleList;

  // 接口方法
  void updateRightTitles(List<BxMallSubDto> titleList) {
    _titleList = titleList;
    notifyListeners();
  }
}

2、注冊(cè)狀態(tài)管理類

void main() {
  return runApp(
    MultiProvider(
      providers:[
        ChangeNotifierProvider(create: (context)=>CategoryState())
      ],
      child: WineShop(),
    )
  );
}

3、狀態(tài)組件綁定

child: Consumer<CategoryState>(
  builder: (context, categoryState, child){
    return ListView.builder(
      scrollDirection: Axis.horizontal,
      itemCount: categoryState.titleList.length,
      itemBuilder: (context, index){
        return buildListViewCell(categoryState.titleList[index]);
      }
    );
  }
)

4、狀態(tài)變更

onTap: (){
  // 更新?tīng)顟B(tài)管理數(shù)據(jù)
  List<BxMallSubDto> titles = categories[index].bxMallSubDto;
  Provider.of<CategoryState>(context, listen: false).updateRightTitles(titles);

  setState(() {
    selectedIndex = index;
  });
}

Tips:listen這個(gè)參數(shù)好像要傳值false,否則沒(méi)效果,具體請(qǐng)參考Stack Overflow


先簡(jiǎn)單記錄下使用方法,后期細(xì)節(jié)待完善。有更好意見(jiàn)歡迎表達(dá)!
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、了解Vue.js 1.1.1 Vue.js是什么? 簡(jiǎn)單小巧、漸進(jìn)式、功能強(qiáng)大的技術(shù)棧 1.1.2 為什么學(xué)習(xí)...
    蔡華鵬閱讀 3,497評(píng)論 0 3
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,011評(píng)論 0 11
  • JAVA相關(guān)基礎(chǔ)知識(shí) 1、面向?qū)ο蟮奶卣饔心男┓矫?1.抽象: 抽象就是忽略一個(gè)主題中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以...
    yangkg閱讀 755評(píng)論 0 1
  • 1、面向?qū)ο蟮奶卣饔心男┓矫?1.抽象:抽象就是忽略一個(gè)主題中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以便更充分地注意與當(dāng)前目標(biāo)...
    michaelgong閱讀 922評(píng)論 0 1
  • 古老的哲學(xué)命題。 今天看到網(wǎng)上的消息,一則新聞稿,發(fā)覺(jué),平凡的崗位,可以做出大文章。 我身邊,有這樣一些人,堅(jiān)守初...
    白露秋月閱讀 397評(píng)論 3 13

友情鏈接更多精彩內(nèi)容