我从页面顶部的导航栏组件执行搜索。 从导航栏输入搜索条件时,可以转到“成员”组件页面,但是一旦进入“成员”组件,然后更改查询参数并尝试再次运行router.navigate() 我无法让Angular打我的解析器。
这是我的工作,也是我在Navigation调用上方尝试过的工作,都不应该在再次在组件上命中我的解析器后,ResureRoute或onSameUrlNavigation似乎都无法工作。
问题是-应该吗?因为也许我在某处有其他问题!
// tried with no luck
this.router.routeReuseStrategy.shouldReuseRoute = () => false;
// tried with no luck
this.router.onSameUrlNavigation = 'reload';
this.router.navigate(['/members'], {
queryParams: {
latitude: this.locationLatitude,
longitude: this.locationLongitude,
gender: this.gender,
minAge: this.ageFrom,
maxAge: this.ageTo,
orderBy: this.orderBy
}
});
答案 0 :(得分:0)
实际上,在这种情况下会调用解析器。您可以简单地通过调试器进行检查。我最近有一个类似的问题,它发生的原因是我的解析器中有一个错误,而组件中还有一个错误(如@smokey-dawson所写-在我的情况下,我错过了route.data的订阅)