首页 > 其他分享 >我在 Flutter 应用中使用 Bloc 的方式

我在 Flutter 应用中使用 Bloc 的方式

时间:2022-09-25 12:56:41浏览次数:75  
标签:github gist 列表 Bloc 应用 使用 com Flutter

我在 Flutter 应用中使用 Bloc 的方式

Flutter 世界中的每个人(几乎)都知道 集团 状态管理库。但并不是每个人都知道何时(或如何)使用它。我也是。

这篇文章只是我对事物的看法,可能更有经验的开发者会把它炸成碎片。可能是像我一样做事的方式是错误的。如果是这样,请给我留言。

所以,欧盟。我使用它的主要目的是为了将所有逻辑与 UI 组件(如视图和其他东西)分开。此外,如果您不知道,它就是为此创建的(惊喜)。

假设我们有一个如下图所示的 Web 表单:

这是编辑器页面之一 操作员18 客户关系管理系统。有 文本字段,下拉列表 和两个单独的内部表单来显示消息列表和经理列表。

我要创建的事件的逻辑如下:

1. 在编辑器页面初始化时,主要数据将被传递给 文本字段下拉列表。

2. 然后我们需要为消息和经理列表加载数据,这就是我使用 Bloc 的地方。

Bloc 的条件之一是在使用前提供必要的 Bloc,否则您将收到错误消息“找不到正确的 Provider在小部件 x 上方”。

我们可以通过两种方式提供 Bloc:

1. 将 Provider 置于 root 之上 材料应用 小部件。 MaterialApp 必须是 Provider 的子级,如下所示:

[

pad-1.dart

即时共享代码、注释和片段。您目前无法执行该操作。您使用另一个标签登录或...

gist.github.com

](https://gist.github.com/kharitonovAL/dab9484c5745a4cee62f43db7dcdf82b)

2.传入Provider 材料页面路由 ,就在您导航到另一个屏幕的位置。你可以这样做:

[

pad-2.dart

即时共享代码、注释和片段。您目前无法执行该操作。您使用另一个标签登录或...

gist.github.com

](https://gist.github.com/kharitonovAL/a71ffb0b7b4158e321099644ac694d35)

最后,您将可以访问提供的 Bloc。

现在我们可以为列表创建 BlocBuilder 并声明状态(例如),如下所示:

[

pad-3.dart

即时共享代码、注释和片段。您目前无法执行该操作。您使用另一个标签登录或...

gist.github.com

](https://gist.github.com/kharitonovAL/154fba650a0eb3057f2471dfdf7ca52f)

我现在很清楚,在你的小部件必须首先加载数据的地方,你需要使用 Bloc。这就是我使用它的方式。

操作员18 系统中有一些地方我为 DropdownList 或 AlertDialog 编写了 bloc(使用 Bloc 时,警报是另一件要处理的事情,因为它们有自己的上下文,与主窗口小部件的上下文无关)。

谢谢阅读!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/39272/42532512

标签:github,gist,列表,Bloc,应用,使用,com,Flutter
From: https://www.cnblogs.com/amboke/p/16727657.html

相关文章