Angular 是否有方法以角度2+;显示零部件的先前状态;?(不改变路线)
我有一个组件,其中根据变量状态显示不同的表。Angular 是否有方法以角度2+;显示零部件的先前状态;?(不改变路线),angular,Angular,我有一个组件,其中根据变量状态显示不同的表。 我很好奇,当我在浏览器中单击“后退按钮”时,是否有一种方法可以显示组件以前的状态。唯一的方法是使用类似的方法。将变量存储在查询参数中。 每次变量更改时,请更改查询参数: constructor( private route: ActivatedRoute, private router: Router ) { } changeParam(newValue: string) { this.router.navigate([],
我很好奇,当我在浏览器中单击“后退按钮”时,是否有一种方法可以显示组件以前的状态。唯一的方法是使用类似的方法。将变量存储在查询参数中。 每次变量更改时,请更改查询参数:
constructor(
private route: ActivatedRoute,
private router: Router
) { }
changeParam(newValue: string) {
this.router.navigate([], {
relativeTo: this.route,
queryParams: { yourParamName: newValue }
});
}
这将把新的URL推送到浏览器的历史记录中,但它将重用路由,并且不会重新加载整个页面。您当前的变量值将在查询参数中可用
如果在该路由中使用其他查询参数,请添加
queryparams:“merge”
选项以确保它们不会被删除:
this.router.navigate([], {
relativeTo: this.route,
queryParams: { yourParamName: newValue },
queryParamsHandling: 'merge'
});
阅读和文档了解所有可用选项
如果您不接受更改路线查询参数,则无法通过浏览器中的“后退”按钮实现该行为(据我所知)