处理RxDart
中触发转换的操作的最佳方法是什么?
方案:
- 用户点击按钮后发送请求。
- 请求列表中的新页面。
在RxSwift
(例如CC_2(等其他反应性实现中,您可以定义Observable<Void>
类型并收听新事件以启动转换。
您可以在RxDart
中定义可观察到的一个可观察到的,但是您被迫在诸如subject.add('something')
或subject.add(0)
之类的主题中添加一些令人困惑的内容。使用subject.add(void)
,subject.add()
或subject.add(())
很酷,但这是不可能的。
我想到的第一个想法是为建议的方案Action
创建一种新类型。
然后我可以做这样的事情:
PublishSubject<Action> action = PublishSubject<Action>();
action.withLatestFrom(...)
.map(....) // Apply the desired transformations
....
....;
action.add(Action.create());
action.add(Action.create());
我在重新发明轮子吗?
是否有更简单的方法可以优雅地处理我在这里提议的内容?
您是否尝试过类似subject.add(Object())
之类的东西? Object
实例是我到目前为止发现的最佳解决方案,我认为,如果现在没有其他更好的解决方案,我将继续使用它。
例如,为了进行测试,您可以写出类似的内容:
test('my subject test', () {
subject.listen((result) {
expect(result, isInstanceOf<Object>());
});
// myButtonMethodToTestSubject();
})
我正在构建此github-flutter-notes-rxdart应用程序,以继续在Flutter上学习RXDART,我选择了Object
作为"发送" void"数据的负责人
告诉您是否找到了自己的Action
类型的更好解决方案。