大佬教程收集整理的这篇文章主要介绍了angular2 – 您需要取消订阅Angular 2的http调用以防止内存泄漏?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
fetchFilm(indeX) { var sub = this._http.get(`http://example.com`) .map(result => result.json()) .map(json => { dispatch(this.receiveFilm(json)); }) .subscribe(e=>sub.unsubscribe()); ...
来自Angular的http XHR后端源的http服务源:
注意在获得结果后如何运行“完整”。这意味着它实际上在完成时取消订阅。所以你不需要自己去做。
这是一个验证测试:
fetchFilms() { return (dispatch) => { dispatch(this.requestFilms()); let observer = this._http.get(`${BASE_URL}`) .map(result => result.json()) .map(json => { dispatch(this.receiveFilms(json.results)); dispatch(this.receivenumberOfFilms(json.count)); console.log("2 isUnsubscribed",observer.isUnsubscribed); window.setTimeout(() => { console.log("3 isUnsubscribed",observer.isUnsubscribed); },10); }) .subscribe(); console.log("1 isUnsubscribed",observer.isUnsubscribed); }; }
如预期的那样,您可以看到,在获得结果并使用可观察操作符完成后,它总是被自动取消订阅。这发生在一个超时(#3),所以我们可以检查可观察的状态,当它完成和完成。
和结果
以上是大佬教程为你收集整理的angular2 – 您需要取消订阅Angular 2的http调用以防止内存泄漏?全部内容,希望文章能够帮你解决angular2 – 您需要取消订阅Angular 2的http调用以防止内存泄漏?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。