В моем приложении флаттера StreamSubscription
не приостанавливается и не отменяется.когда я звоню cancel()
, если он начинается раньше, чем остановится.Если я позвоню cancel()
после запуска, он не остановится.Я использую прослушиватель снимков Firestore.Ниже как мой код.Я пробовал другой метод, но не работает.проблема в том, что пожарный магазин listener
не останавливается после загрузки данных.
StreamSubscription<QuerySnapshot> streamSubscription;
@override
void initState() {
super.initState();
print("Creating a streamSubscription...");
streamSubscription =Firestore.collection("name").document("d1").collection("d1")
.snapshots().listen((data){
//It will display items
}, onDone: () { // Not excecuting
print("Task Done");
}, onError: (error) {
print("Some Error");
});
streamSubscription.cancel(); //It will work but cancel stream before loading
}
@override
void dispose() {
streamSubscription.cancel(); //Not working
super.dispose();
}