我正在使用Http-GET请求从我的后端接收一些json。
服务:
public categories: BehaviorSubject<Category[]> = new BehaviorSubject(null);
constructor() {
const sub = this.http.get<ResponseInterface>(environment.apiUrl + 'categories')
.subscribe(response => {
categories.next(response.data)
}, (error: any) => {
sub
}, () => {
sub.unsubscribe();
});
}
组件:
this.service.categories.subscribe(categories => {
if (categories !== null) {
this.categories = categories;
}
});
开发中的一切都很好(ng serve --aot)
如果我在生产中使用该请求,则会降低浏览器的速度,因此我必须手动结束脚本才能再次使用我的浏览器。但令人惊讶的是,只要我停止脚本,请求的答案就会出现在网络标签中。
但最烦人的是这个错误只出现了9/10次。有没有人见过类似的东西?
答案 0 :(得分:1)
我可以通过将一个空数组([])分配给BehaviorSubject而不是null来解决问题。
public categories: BehaviorSubject<Category[]> = new BehaviorSubject([])