gpt4 book ai didi

angular - 需要取消订阅 Firestore/Angularfire2 订阅

转载 作者:行者123 更新时间:2023-12-02 16:54:01 24 4
gpt4 key购买 nike

我像这样使用Firestore。

用例 1:

contacts$: Observable<ContactDetail[]>;

constructor(){
}

ionViewDidEnter() {
this.contacts$ = this.contactProvider.getSpecificUserContacts(this.authenticationProvider.user.uid).valueChanges();
this.contacts$.pipe(first()).subscribe(res => { },
err => { },
() => { }
);
}

用例 2:

getAllContactCategories() {
this.categories$ = this.categoryProvider.getAllContactCategories().valueChanges();
this.categories$.subscribe(res => {
this.categorySortedList = res;
},
err => { }
);
}

但我从未取消订阅它。那么我需要这样做吗?否则,会导致内存泄漏并耗尽电池电量吗?我知道我们不需要取消订阅 Angular HTTP 服务,因为它是由框架本身自动完成的。那么 Firestore/Angularfire2 observables 又如何呢?我从未在 firestore 书籍或文章中见过这样的模式。

最佳答案

是的,退订已订阅的就好了。你可以试试这个...

  contactsSub: Subscription;

构造函数(){
}

ionViewDidEnter() { ... }

  ionViewDidLeave{
this.contactsSub.unsubscribe();
}

来自 angularfire2 代表: https://github.com/angular/angularfire2/issues/377

关于angular - 需要取消订阅 Firestore/Angularfire2 订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52147400/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com