Observable ist in rxdart 0.23.1 veraltet

14

Ich habe gerade ein Upgrade durchgeführt rxdart 0.23.1und plötzlich erhalte ich Fehler, wo immer ich die ObservableKlasse verwendet habe. Ich habe in der Dokumentation über die wichtigsten Änderungen gelesen und angegeben, dass das rxdart_codemodPaket verwendet werden soll, das ich in meine pubspec.yamlDatei integriert habe , und dass das Ausführen des folgenden Befehls pub global activate rxdart_codemodden -bash: pub: command not foundFehler auslöst. Ich habe flutterrichtig installiert und flutter doctorscheint auch gut zu laufen. Gibt es eine andere Klasse, die ersetzt hat Observable, konnte nichts darüber in den Dokumenten finden. Natürlich kann ich die Sprache Observabledurch die Streamvon Dart ersetzen, bin aber sehr interessiert zu wissen, welchen Weg das rxdartPaket nimmt, da es angibt, dass es die dart extension.Verwendungsmethoden nutzt, mit denen dies combineLatest2nicht möglich istDart's Stream Also ist es keine gute Wahl für den Ersatz?

Schubs
quelle

Antworten:

25

Das Observablekann durch ersetzt werden, Streamwie ich in der Frage erwähnt habe. Wenn Sie jedoch Methoden wie combineLatest2from verwenden Observable, ersetzen Sie es einfach Observabledurch eine abstrakte Klasse, Rxdamit Sie es verwenden könnenRx.combineLatest2

Schubs
quelle
20

Rxdart benötigt keine benutzerdefinierte Klasse mehr, um zu funktionieren.

Es basiert jetzt auf Erweiterungsmethoden, bei denen es sich um eine neuere Dart-Funktion (Dart 2.6) handelt, um alle ObservableFunktionen direkt zu implementieren Stream.

Sie können alle Ihre Observabledurch sicher ersetzen Stream.

Rémi Rousselet
quelle
3
Korrigieren Sie die Schreibweise von Stream
Nudge
Wie verwende ich dann Methoden wie combinLatest2 mit Stream, das wird nicht möglich sein
Nudge
4

Sie können verwenden

flutter pub global activate rxdart_codemod 

statt pub global activate rxdart_codemod.

Eine andere Möglichkeit ist, Ihre Observabledurch zu ersetzen Stream.

Kartik Shandilya
quelle
3

Verwenden Sie Rx.combineLatest2 anstelle von Observable.combineLatest2

Beobachtbar funktioniert nicht mehr!

goodBot
quelle
0

Rxdart implementiert es jetzt in RX .combineLatest2

Franco Macri
quelle