问题标签 [rxdart]
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.
dart - RX:处理 combineList 中的错误
我combinedLatest2
在 RxDart 中使用,但我仍然对此感到困惑。这是我的代码:
我有两个主题,其中我引用了它们的流和sink.add
函数。在将流分配给它们各自的变量之前,我添加了一个转换器,以确保发出非空字符串,否则将向接收器添加错误。最后,我创建了另一个流,combined
,通过结合前两个使用Observable.combineLatest2
.
该combined
流仅在其“子”流发出有效值时才会发出。我在这里面临的问题发生在两个流已经发出有效值,然后都发出无效值,然后其中一个发出有效值时。有趣的是,对于最终的发射,combined
流还发射了新更新的流的新值和另一个流的前一个有效值(尽管在前一个有效值之后已经发射了一个无效值)。我能防止这种情况发生吗?换句话说,运行这段代码:
将生成此输出:
我试图实现的输出:
总之,我试图使combined
流仅在每个流的最新值有效时才发出。
dart - 如何从 Streambuilder 快照中解析对象
我的应用程序正在使用 (BLOC) RxDart 和 Streams 来传递信息并动态构建小部件。
但是,如果它将一个简单的 PODO(普通旧 dart 对象)传递到流中,我将无法使用 StreamBuilder 小部件解析它。
我可以将它输出到字符串并打印“对象实例”,但是如果我似乎无法深入了解对象详细信息。
添加到流控制器
使用验证器添加到流
消费流
任何建议或帮助将不胜感激。
dart - ListView 内的多个 StreamBuilder 无法监听同一个 Stream
我有2个StreamBuilder
里面ListView
那个听一样Stream
的,就是valueStream
。在那里面StreamBuilder
,我SwitchListTile
给 . 添加了新的价值valueStream
。
这是我的Stream
:
这是我的ListView
:
这是Switch1
小部件:
这是Switch2
小部件:
如果我触摸Switch1
小部件,StreamBuilder
内部Switch2
应该会重建,反之亦然,但这并没有发生。我试图添加UniqueKey
到Switch1
and Switch2
,但这没有帮助。任何建议如何使这项工作?
flutter - 基于流的颤振小吃店展示
我目前有一个有趣的问题,与基于用户操作显示小吃店有关。
以上听起来很琐碎,但让我们详细说明:
我有 2 个屏幕:
- 员工名单
- 添加员工
该应用程序使用 bloc 模式(使用流/rxdart)。
这是我想要的:
- 用户单击员工列表屏幕中的添加员工 FAB 按钮并导航到添加员工屏幕(工作正常)
- 用户填写员工详细信息并点击保存
- 保存后,员工被添加到流中,并更新了员工屏幕列表(工作正常)
- 用户被导航回员工列表(工作正常)
- 显示 Snackbar 说明已成功添加员工(这是问题所在)
我尝试了几种实现方式:
添加一个新流(employeeAdded),并且在将员工添加到员工流时,另外将布尔值推送到已添加的员工。
在员工列表中,添加一个新的流构建器,并在构建器逻辑中添加快餐栏。
这会带来各种各样的问题,例如试图在页面已经(重新)构建之前显示小吃栏,等等。
问题是双重的:对于这种情况,什么是好的用户体验实践,对于这个问题,什么是好的解决方案?
(将根据要求发布代码)
谢谢您的帮助!
dart - 为 dart 中的每个发射生成一个具有延迟的流
我想从具有特定延迟的 dart 列表中发出流中的值。
因此,从 [1,2,3],这是一个常规列表,我想像1...2...3
在单独的事件中一样发出值。
我尝试过这样的事情
但是我得到...123
了相反的结果,所以这将整个流延迟了 1 秒,而不是列表中的每个值。
有任何想法吗?谢谢
dart - 如何将 Firebase 快照与 rxdart 流一起使用
我有一个具有所有与 firebase 相关的功能的类,以及另一个管理状态(块)的类。如何使它们始终如一地工作?
我的方法可能不正确,但我想描述这个问题。
flutter - Observable.onError 处理程序不会阻止异常杀死应用程序
更新了代码
我厌倦了调试这些错误而没有结果任何人都知道错了什么???!?!?!
当添加的 Stream 发出正常事件时,它可以正常工作,但是在发出错误时,它由 onErorr 方法处理,并且发生了一个奇怪的错误,正如您在 StackTrace 中看到的那样。
dart - RxDart 是否支持背压?
当有一个快速的生产者和缓慢的消费者时,我想用最新的替换所有旧的等待排放 - 类似于 RxJava 的Emitter.BackpressureMode.LATEST
有没有办法在 RxDart 或 Dart Streams 中实现这一点?