angular - 基于导航,在 Angular 中显示/隐藏一些控件
问题描述
我将从两个组件A,B转到组件X。如果我从组件 A转到组件 X,那么我需要显示/隐藏不同的控件集,而如果我从组件 B转到组件 X,那么我需要显示/隐藏一组不同的控件。我怎样才能做到这一点,我可以传递查询字符串参数,但它可以由用户在浏览器中更改。
如何在 Angular 6 中实现此功能?
我在 kendo 网格内动态设置组件中的导航链接
editHandler(dataItem) {
this.router.navigate(['/A', dataItem.ID]);
}
解决方案
你可以这样做:
从您的 componentA 和 componentB 中,您可以传递参数以确定它来自哪个组件:
<a [routerLink]="['/Linkx', {state: "A"}]">Componenta </a>
<a [routerLink]="['/Linkx', {state: "B"}]">Componenta </a>
在你的 x .ts 你做:
constructor(private route: ActivatedRoute) {}
ngOnInit() {
this.sub = this.route.params.subscribe(params => {
this.state = params['state']; // take the state
// check the state and do your controls
});