私はAngularDartを使用しています。アクティブなリスナーを削除/追加することで、私が聴いているリファレンスを変更したいと思います。Dart Firebase off()メソッド
以下のリンクと "Detach listers"ドキュメントから、新しいリスナーを追加できるようにアクティブなリスナーを削除するにはoff()メソッドが必要です。
質問:Dartでoff()メソッドを使用する方法。
デタッチリスナー:
コールバックは、あなたのFirebaseデータベース参照の上オフ()メソッドを呼び出すことによって除去されます。 1つのリスナーをパラメータとしてoff()に渡すことで、1つのリスナーを削除できます。引数のない場所でoff()を呼び出すと、その場所のすべてのリスナーが削除されます。 親リスナーでoff()を呼び出しても、子ノードに登録されているリスナーは自動的に削除されません。 callbackを削除するには、子リスナーに対してoff()も呼び出さなければなりません。
私にはキャンセルの呼び出しが機能しませんでした。 cancel()を呼び出した後にコールバックが登録されているかのように動作します。代わりにfirebase.database.Queryについてもっと学びました。アプリケーションは、リスナーを追加/削除するのではなく、適切なデータを取得するためにorderByChildとequalTo Queryを使用します。これは動作し、行く正しい方法と思われる。 – Ayyrk