首页 > 解决方案 > 根据当前路由参数显示 html

问题描述

在我的组件中,我想根据当前路由参数显示文本,在模板中我执行以下操作:

<h1 *ngIf="mode === 'edit'">Modifier</h1>
<h1 *ngIf="mode === 'add'">Ajouter</h1>

在 ngOnInit 函数中,我有这个:

this.route.params.subscribe(params => {
    this.id = +params['id'];
    this.currentMode = params['mode'];
})

但是,当我访问我的组件时,尽管已设置,但该元素始终是隐藏的currentMode

我该如何解决这个问题?

标签: angular

解决方案


您不能param在模板中使用名称,使用变量名称,即this.currentMode.

<h1 *ngIf="currentMode === 'edit'">Modifier</h1>
<h1 *ngIf="currentMode === 'add'">Ajouter</h1>

这里的假设是您从变量中的 param 获取值this.currentMode,我只需通过在标签旁边打印它来测试它,例如:

{{currentMode}}

推荐阅读