如何使用流构建器和块模式更好地构建社交媒体应用程序

Posted

技术标签:

【中文标题】如何使用流构建器和块模式更好地构建社交媒体应用程序【英文标题】:how to architect better for a social media app using stream builder and bloc pattern 【发布时间】:2021-03-22 13:52:30 【问题描述】:

目前正在使用直接 API 调用并将数据映射到列表中,并使用回调函数来更改列表属性。 我的 API 模型是

        class UserProfileResponse 
                  int status;
                  String message;
                  Data data; 
                      
        class Data 
              UserDetails userDetails;
              List<Post> posts;
              String followers;
              String following; 

        class Post 
          String id;
          String userId;
          String post;
          String imagepath;
          String location;
          DateTime postDate;
          String likes;
          String status;
          String active;
          String inactive;
          String createdBy;
          String postType;
          String userLiked;
          String isGroup;
          String videoLink;
          String comments;
          String shares;
          String thumbnail; 

  class UserDetails 
      String username;
      String email;
      String id;
      String profilePicture;
      String bio;
      String address;
      String mobile; 

在需要 API 调用时,如何使用 bloc 模式即时更新 like 和 like ,目前我使用 set state 并更新列表,然后调用 API 请求进行后端更改,回调很麻烦? 是否可以使用 API 响应流构建它并同时列出数据流,例如,与选项不同,这样我就可以在网络中无延迟地更新?

【问题讨论】:

您至少应该自己尝试一下,如果您遇到任何问题,请在 SO 上寻求帮助,请参阅pub.dev/packages/flutter_bloc 【参考方案1】:

使用 streamprovider 可能会对您有所帮助,但请确保不要多次调用提供程序,否则您将对 API 进行不必要的调用。

【讨论】:

以上是关于如何使用流构建器和块模式更好地构建社交媒体应用程序的主要内容,如果未能解决你的问题,请参考以下文章

设计和构建区块链社交媒体平台

如何在firebase firestore中准确合并多个流

如何使用 MERNG 实现社交媒体提要?

下一代社交产品应该如何构建?

今日社区发布 | 双模IT趋势下如何更好地构建微服务架构——IBM Microservice Builder解决方案正式发布

语义网络分析需要建立语料库吗