Flutter - 使用 rxDart BehaviorSubject 和 Observable 进行全局状态管理
Flutter - using rxDart BehaviorSubject with Observable for global state management
我只是在尝试此处的 BehaviorSubject 示例代码
https://fireship.io/lessons/flutter-state-management-guide/
已安装 rxdart 并可从 pub.dev 观察到,但此行出错
Observable get stream$ => _counter.stream;
错误:无法从函数 'stream$' 中 return 编辑类型 'ValueStream' 的值,因为它的 return 类型为 'Observable'。 (return_of_invalid_type 在 lib\models\globals.dart:54)
我想 Observable
class 自 Dart 2.7 以来已被弃用,其中引入了扩展方法,因此您必须使用普通 Stream class 并导入 RxDart 插件来获取RxDart 提供的不同功能。如果您想合并两个或更多流,可以使用 Rx
class。我还鼓励您使用 flutter_bloc 插件,它可以很好地处理 InheritedWidget、StreamBuilder 和 Streams。
Fireship.io 视频很好地调查了 Flutter 中可用的状态管理选项。不幸的是,它有点过时了。
Observable
现在可以安全地替换为 Stream
Observable get stream$ => _counter.stream;
如果您需要合并流,请使用 Rx.combineLatest2
而不是 Observable.combineLatest2
,因为后者现在已过时。
我只是在尝试此处的 BehaviorSubject 示例代码 https://fireship.io/lessons/flutter-state-management-guide/
已安装 rxdart 并可从 pub.dev 观察到,但此行出错
Observable get stream$ => _counter.stream;
错误:无法从函数 'stream$' 中 return 编辑类型 'ValueStream' 的值,因为它的 return 类型为 'Observable'。 (return_of_invalid_type 在 lib\models\globals.dart:54)
我想 Observable
class 自 Dart 2.7 以来已被弃用,其中引入了扩展方法,因此您必须使用普通 Stream class 并导入 RxDart 插件来获取RxDart 提供的不同功能。如果您想合并两个或更多流,可以使用 Rx
class。我还鼓励您使用 flutter_bloc 插件,它可以很好地处理 InheritedWidget、StreamBuilder 和 Streams。
Fireship.io 视频很好地调查了 Flutter 中可用的状态管理选项。不幸的是,它有点过时了。
Observable
现在可以安全地替换为 Stream
Observable get stream$ => _counter.stream;
如果您需要合并流,请使用 Rx.combineLatest2
而不是 Observable.combineLatest2
,因为后者现在已过时。