有什么方法可以通过单击外部按钮来扩展特定的 mat-expansion-panel 吗?
我试过链接到面板的 ID,但没有成功……
<mat-expansion-panel id="panel1"> ... </>
...
<button (click)="document.getElementById('panel1').toggle()>Click me</button>
我最终的计划是使用此方法打开从数组生成的列表中的不同面板: <mat-expansion-panel *ngFor="let d of data"> ...
原文由 physicsboy 发布,翻译遵循 CC BY-SA 4.0 许可协议
在你的 html 文件中:
在你的 TS 文件中:
如果您使用 *ngFor 生成扩展面板:
如果您按下按钮,所有展开的面板都会同时打开。
要使用一个按钮仅打开一个面板,请为每个元素的数据数组添加一个“扩展”属性,如下所示:
然后在你的模板中:
以及按钮点击引发的方法: