我有一个 angular2 应用程序,其中列出了许多项目,用户可以单击以获取有关该项目的更多详细信息。
现在,其中一些项目我实际上并没有详细信息 - 当我提出服务请求时我会知道,因此我不想加载带有 404 或其他内容的页面,我只是不想让他路由到那个页面。
我正在使用 Resolve 加载项目,所以理论上它应该非常简单,但我无法弄清楚如何在某些条件下阻止路线发生变化。
我尝试使用Location.back
,但这似乎根本不起作用。
resolve(route: ActivatedRouteSnapshot): Promise<Article> {
return this.articleService.getArticle(route.paramMap.get('name')).then((article) => {
if (article) {
return Promise.resolve(article);
}
else {
//Stop them?
}
})
}