我目前有一个非常大的Angular2应用程序。在应用程序内部,我有一个列出一堆产品的页面,当您点击产品时,它会将您带到产品详细信息页面。
这些组件中没有一个非常复杂的代码,只有几个api调用。
当我在产品列表页面和产品详细信息页面之间来回切换时(单击产品列表页面=>产品详细信息=>产品列表=>不同的产品详细信息=>产品列表=>差异产品细节...等等)整个东西减慢很多,并且需要永远加载或停止加载一般。网址通常会很快走到正确的路径,但是页面不会加载到20秒的任何地方......这很疯狂。它几乎感觉就像一个事件循环被堵塞,不知道它是什么。任何人都可以向我解释发生了什么以及为什么这么慢?
我的组件中也有这些订阅,我对订阅不是很熟悉,也不确定它们是否会导致一些问题:
在产品列表组件中:
checkCategoryQuery() {
this.activatedRoute.queryParams
.subscribe(params => {
var params1: any = params;
if (params1.category) {
var category = params1.category;
this.filterByCategory(category)
}
else {
this.$grid.isotope({
sortBy: 'points',
sortAscending: false
});
}
})
}
在产品详细信息组件中:
getParameter() {
return this.activatedRoute.params
.first()
.toPromise()
.then(params => {
return params['reward-name'];
})
}