首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多组建造者

多组建造者
EN

Stack Overflow用户
提问于 2020-05-23 05:40:48
回答 1查看 11.5K关注 0票数 9

情况是这样-

我的颤振应用程序仪表板屏幕有两个单独的列表

  1. pageView on top和
  2. 列表项目

我有一个名为dashboard_bloc和dashboard_event的组,它有两个单独的事件来分别获取pageView数据和列表项数据以及dashboard_state。

我就是这样开始的。

代码语言:javascript
复制
    void initState() {
    // TODO: implement initState
    super.initState();
    _dashboardBloc = DashboardBloc(repository: ProductRepositoryImpl());
    _dashboardBloc.add(FetchHomeProductsEvent(token: token, productId: "1"));
    _dashboardBloc.add(FetchProductsEvent(token: token));
  }

    Widget build(BuildContext context) {
    return Scaffold(
      body: BlocProvider(
        create: (context) => _dashboardBloc,
        child: SingleChildScrollView(
          child: Column(
            children: <Widget>[
              Container(
                child: BlocBuilder<DashboardBloc, DashboardState>(
                    bloc: _dashboardBloc,
                    builder: (context, state) {
                      if (state is DashboardLoadingState) {
                        return buildLoading();
                      } else if (state is DashboardErrorState) {
                        return buildErrorUi(state.message);
                      } else if (state is DashboardLoadedState) {
                        return buildProdctsList(state.products, context);
                      } else {
                        return Container();
                      }
                    }),
              ),
              Container(
                child: BlocBuilder<DashboardBloc, DashboardState>(
                    
                    bloc: _dashboardBloc,
                    builder: (context, state) {
                      if (state is DashboardProductState) {
                        return Text(state.products.name);
                      } else if (state is DashboardErrorState) {
                        return buildErrorUi(state.message);
                      } else {
                        return Container();
                      }
                    }),
              ),
            ],
          ),
        ),
      ),
    );
  }

这是集团过渡日志-

代码语言:javascript
复制
I/flutter (  877): Transition { currentState:DashboardStateInitialState, event: FetchHomeProductsEvent,
        nextState: DashboardProductState }
I/flutter (  877): Transition { currentState: DashboardProductState, event: FetchProductsEvent, nextState:
        DashboardLoadingState }
I/flutter (  877): Transition { currentState: DashboardLoadingState, event: FetchProductsEvent, nextState:
        DashboardLoadedState }

这里的问题是我无法呈现FetchHomeProductsEvent的状态。它只呈现FetchProductsEvent的状态。

如何使用多个单元生成器处理这两个事件。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2021-05-10 08:02:17

就我个人而言,这就是我是如何在我的主页上实现我的的, ===>Created A块用于显示可刷卡(我称之为BannerBloc);===>Create是用于显示产品网格的块(我称之为ProductBloc);

这两个块仅在我的主页文件夹中,因为我总是在每页创建一个整块文件夹,然后该文件夹可以包含类似于

  • 旗帜集团
  • 产品集团

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61967951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档