flutter error: The method 'combineLatest4' isn't defined for the type 'Observable'

flutter error: The method 'combineLatest4' isn't defined for the type 'Observable'

我的项目已经6个月没有更新了(别人写的,最后一次构建成功),但是今天我想更新它但遇到一些错误:

lib/src/blocs/account/account_bloc.dart:69:33: Error: The getter 'Observable' isn't defined for the class 'AccountBloc'.

Try correcting the name to the name of an existing getter, or defining a getter or field named 'Observable'.

似乎Observable来自rxdart library,但我不确定。

我的代码:

//Merging username and password streams
Stream<bool> get saveValid => Observable.combineLatest4(nameStream, phoneNumberStream, emailStream, addressStream, (name, phoneNumber, email, address) => true);

rxdart 我的 pubspec.yaml 版本:rxdart: ">=0.18.1 <0.24.1"

有什么解决办法吗?

RxDart v0.23 用扩展方法替换了 Observable class。您现在需要改用静态 Rx.combineLatest4()。如果您在 pub.dev 上查看 RxDart 的更改日志,您会发现您可以 运行 一个包 rxdart_codemod 来迁移您的 RxDart 代码。

https://pub.dev/documentation/rxdart/latest/rx/Rx/combineLatest4.html