问题标签 [bloc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1116 浏览

flutter - 状态变化的集团导航

我对flutter blocs真的很陌生,并且在bloc实现方面遇到了一些问题,我正在尝试在我的启动屏幕小部件中的状态更改后导航。

在状态更新到InitSuccess之后,它应该导航到LoginScreen,但是这种导航会发生很多次。

我无法理解在状态更改为InitSuccess后该怎么做,此后该集团保持活力并多次调用LoginScreen

启动画面

飞溅集团

0 投票
1 回答
1021 浏览

flutter - 如何在 bloc 中导航

我有一个登录/注册页面。当用户注册时,我会调用我的 bloc 代码并进行 firebase 注册。现在,当我完成注册时,我希望将应用程序重定向到主页。我怎样才能控制集团的导航流程?

我尝试在材料应用程序的“主页”中使用 firebase authstatechanges 流,但这仅在应用程序首次启动时才有效。我已经加载了注册页面后它不起作用。

我还创建了一个方法来监听用户注册时更改的流布尔值,但该方法没有收到任何更新。

0 投票
0 回答
315 浏览

flutter - Flutter BLoC(flutter_bloc plugin) 输入焦点的奇怪行为。额外的状态调用

我在理解 BLoC 模式中的一种行为时遇到了问题。使用 flutter_bloc 插件

我基于这个做了一个项目:https ://felangel.github.io/bloc/#/flutterlogintutorial

没什么特别的。我有两个带有按钮的页面,可以在它们之间导航。因此,如果我转到第二页然后返回登录页面并专注于任何输入字段,我会看到一个额外的输出(“状态”);

一步步:

  1. 启动应用程序 -> Flutter 调试控制台:LoginInitial
  2. 按“第二页”
  3. 按'登录页面'->颤振调试控制台:LoginInitial
  4. 专注于任何输入字段->颤振调试控制台:LoginInitial

任何想法为什么会发生在第四步?

登录页面:

}

完整项目:https ://github.com/ViktorKirjanov/flutter_login_issue

0 投票
2 回答
6892 浏览

flutter - 使用 BLoC 的 Flutter 导航:用于从 Navigator 推送路由的上下文必须是 Navigator 小部件的后代

我正在使用 BLoC,我需要从 PageOne 导航到 PageTwo 并能够使用后退按钮返回,我不知道这是否是处理此问题的正确方法。调用函数_navigateToPage2时,我也会收到错误消息。

用于从 Navigator 推送或弹出路由的上下文必须是作为 Navigator 小部件后代的小部件的上下文。

0 投票
1 回答
183 浏览

dart - 使用 BehaviorSubject 的测试中的 TimeoutException - BLoC

我创建了一个简单的 Bloc,它使用BehaviorSubject并尝试测试其发出的值,但是TimeoutException当我交换添加的流时,我在测试或错误期间不断得到。

集团

考试

当标题流发出单个项目时,它可以正常工作。但是当它发出多个项目时,它会超时。这是我在交换发射顺序时得到的错误

错误:预期:应该按顺序执行以下操作:*发出一个“hi”事件 *发出一个“hello”事件实际:'>哪个:发出*你好,它没有发出一个“hi”事件,因为它发出了一个不同的事件。预期:你好 实际:你好 ^ 在偏移量 1 处不同

注意:当我更改为时,一切都按我的预期BehaviorSubject工作StreamController

0 投票
2 回答
1390 浏览

architecture - Flutter BLoC:使用嵌套的 StreamBuilders 是一种不好的做法吗?

是否有更好的方法将小部件公开给来自不同 BLoC 的两个或多个流?到目前为止,我一直在使用嵌套StreamBuilder的流,就像我需要听的一样多,就像下面粘贴的代码一样。这是一个好习惯吗?

使用rxdartlike 运算符combineLatest2感觉很笨拙,因为在大多数情况下,我不希望某个集团被用来了解另一个集团中的流。

0 投票
1 回答
4390 浏览

flutter - Flutter Auth(BLoC 模式和 rxDart)

我想在BLoC合作伙伴上进行授权申请,但遇到错误:

在以下情况下调用它:

在 AuthScreen 中

在 BlocProvider 中

我不明白为什么它不起作用,我做的一切都正确,也许我错过了什么或不明白......帮助解决问题!

所有代码:

AuthBloc

块提供者

身份验证服务

验证器:

屏幕截图

0 投票
3 回答
1880 浏览

flutter - 尝试从 youtube-search-tutorial 实现 BLoC 时出现颤振错误

我在颤振中实现 BLoC 时遇到问题,我按照本教程进行操作: https ://github.com/ResoCoder/youtube-search-flutter-bloc

但是我收到以下无法调试的编译器消息:

我在用着:

有关如何解决此错误的任何想法?谢谢!

0 投票
1 回答
1747 浏览

stream - 如何使用流转换和块重置表单中的字段

我有一个屏幕,我想在其中使用流转换验证字段。验证数据后,必须启用提交按钮。当我提交表单时,我想留在同一个屏幕上并重置数据。必须禁用发送按钮。

验证过程正在运行,但是当我单击提交表单时,重置过程不起作用。

验证测试

下面,完整的代码。

(不在此代码中)我尝试使用控制器重置文本字段,它可以工作,但提交按钮仍处于启用状态。

0 投票
1 回答
187 浏览

flutter - 两个不同的块导致“坏状态:流已经被收听”。

我是新来的。我在同一个脚手架上有一个登录(和 bloc)和注册(和 bloc)小部件:

登录区:

Register Bloc 与 Login Bloc 非常相似,不需要发布。

每当我滑动到登录/注册然后返回到注册/登录时,它都会给我一个错误:“状态不佳:流已被收听。”