我遇到了一个与 Angular 2 和 ngrx/store 相关的特定代码状态,我的应用程序完全崩溃了(路由不工作,数据不出现,路由回到上一个页面,以及所有其他可能的灾难),但我已经没有办法调试存储器周围发生的事情了。Redux dev-tools 是一个很好的工具,但似乎无法捕捉错误。
我在我的选择器、效果和 .subscribe() 语句之前放置了.catch语句,尝试了两种变体:
我在我的选择器、效果和 .subscribe() 语句之前放置了.catch语句,尝试了两种变体:
return state$.select(state => state.user)
.map(user => user.collection)
.catch((error, caught) => {
console.log('error getCollection');
return caught;
});
并且
return state$.select(state => state.user)
.map(user => user.collection)
.catch((error) => {
console.log('error getCollection');
return Observable.throw(error);
});
控制台保持沉默。我不相信会有任何其他的“单一错误源”,除了存储器。
这段代码对我来说没有捕获错误。它应该吗?:
.do(() => {
Observable.throw('fake error');
})
.catch(error => {
console.error(error);
return Observable.throw(error);
});
有人能指导我如何调试存储中使用的可观察对象吗?
.do(() => { Observable.throw('fake error'); }) .catch(error => { console.error(error); return Observable.throw(error); });
- user776686