如何在Flutter中的另一个blocbuilder中使用blocbuilder

问题描述 投票:0回答:1

我用 BasketBloc 包装了 inkwell 小部件,在篮子事件中我有一个函数 AddProduct ,它实际上将添加产品添加到购物篮中,其代码如下:

onTap: () {
  context
      .read<BasketBloc>()
      ..add(AddProduct(Product.products[index]));
}

这段代码运行良好。问题是 AddProduct 正在将产品模型中的静态产品添加到购物篮中。我希望它从 ProductBloc 状态添加产品,例如,我可以执行类似 state.products[index] 的操作,而不是 Product.products[index] ,并且状态是 ProductBloc 而不是 BasketBloc 的状态。我尝试了各种方法,但没有任何帮助。

flutter firebase state bloc state-management
1个回答
0
投票

好吧,我让它工作了,我只是给了不同的集团不同的州名称,它就工作了,例如:

BlocBuilder<BasketBloc, BasketState>(
  builder: (context, state) {   //here i changed state to basketstate

我拥有的另一个集团是 ProductBloc,它位于 BasketBloc 内

BlocBuilder<ProductBloc, ProductState>(
  builder: (context, state) {   //here i changed state to productstate
  ....
context
  .read<BasketBloc>()
  ..add(AddProduct(Product.products[index]));  //here i replaced Product with productstate and it worked
...

}

© www.soinside.com 2019 - 2024. All rights reserved.