小编Abd*_*han的帖子

Flutter bloc state 在更新 List/array 索引时不更新状态

我正在尝试在 bloc 类中实现复选框逻辑。为此,我List<bool> checked在块类中创建的代码如下。当CheckBoxClicked事件触发时,状态第一次更新,我可以看到该框已选中。

class CartProductsListBloc
    extends Bloc<CartProductsListEvent, CartProductsListState> {
  CartProductsListBloc() : super(InitialCartProductsListState());

  final ProductRepository productRepository = ProductRepository();
  List<bool> checked = List<bool>();
  var productsList;

  @override
  Stream<CartProductsListState> mapEventToState(
      CartProductsListEvent event) async* {
    if (event is FetchCartProductsList) {
      yield FetchingInProgress();
      try {
        productsList = await productRepository.loadListOfProductInUserCart();
        //initialize checked according to productsList
        for (int i = 0; i < productsList.length; i++) {
          checked.add(false);
        }
        yield FetchCartProductsListSuccess(
            productsList: productsList, checked: checked);
      } catch (error) {
        yield FetchCartProductsListFail(
            error: 'Fail to …
Run Code Online (Sandbox Code Playgroud)

equatable flutter-bloc

9
推荐指数
1
解决办法
1197
查看次数

标签 统计

equatable ×1

flutter-bloc ×1