在特定需求下如何隐藏属性?

How can attributes be hidden under specific requirements?

我在模板中定义了这个元素:

<mat-accordion class="" [multi]="true" hideToggle>
</mat-accordion>

当页面显示在设备上时,我需要禁用上面元素中的 hideToggle 属性。

如何在特定需求下隐藏属性?

您可以将其用作输入指令。

在 component.ts 文件中创建一个变量以指示是否应启用或禁用它。

public hideToggle: boolean = true;

然后在 html 中使用它,如下所示:

<mat-accordion [hideToggle]="hideToggle">

Example in Stackblitz

这不是属性 - 它是组件的输入值。这意味着您可以从变量中分配此值,就像您对 multi 输入所做的一样,例如

<mat-accordion class="" [multi]="isMulti" [hideToggle]="isToggleHidden">*

当然,您需要在 .ts 文件中定义这些值,并具有一些可以更改这些值的逻辑。

这是一个 example stackblitz

根据特定要求:

Element.removeAttribute("hideToggle");

并在需要时将其添加回来:

Element.setAttribute("hideToggle");