我有一个按钮可以重定向到帖子创建页面,但是由于某种原因,它只能运行一次。之后,我必须刷新页面才能使其再次工作。
运行Angular2,我相信我已经尝试了相对路径的整个过程。
selectCreateData() {
if (this.myView.link) {
this.router.navigate([this.myView.link, 'create']);
} else {
this.createDataValue = {};
}
}
<button (click)="selectCreateData()">Create new Post</button>
控制台中没有错误,记录this.myView.link
会返回localhost
之后的整个路径。示例:/7f45c1b1-b0c4-4f2d-96fd-a786889fbae2/projects/2723ec7d-3d2b-41f3-b332-b2e384a8e03a/process/
答案 0 :(得分:1)
要再次路由到“相同”路由,您需要结合使用onSameUrlNavigation
和订阅路由器事件。
onSameUrlNavigation定义路由器在收到对当前URL的导航请求时应采取的措施。 (请参阅https://angular.io/api/router/Router#properties)
您将使用ExtraOptions
的{{1}}参数应用此方法
在您的组件类中收听.forRoot([routes], { onSameUrlNavigation: 'reload' }
:
NavigationEnd
有关完整的工作示例,请参见https://github.com/mateothegreat/ng-byexamples-routing-same。