javascript - Angular *ngFor "id"标签生成不正确, `mat-button-toggle`

标签 javascript angular ngfor

我正在尝试从数组生成按钮列表:

<div class="card-container">
    <mat-button-toggle *ngFor="let button of buttonsFromApi" id={{button.id}} class="problemButton" [disabled]="sso.invalid" >{{button.id}}</mat-button-toggle>
</div>

buttonsFromApi 包含 5 个对象,例如:

{
    displayName: "Button name", 
    id: "100",
}

所以基本上我希望按钮显示 displayName(这有效)并具有对象中的 id。后者不会发生,而是按钮具有 100-button200-button 而不是 100200。为什么会这样,我怎样才能使 ID 为 100200 而不是 100-button200-button?

最佳答案

如果您想覆盖(或更好地扩展) Angular Material 的默认按钮 ID,则必须传入 ID。 ( https://material.angular.io/components/button-toggle/api#MatButtonToggle )

<div>
  <mat-button-toggle id="test-123" value="right" aria-label="Text align right"></mat-button-toggle>
</div>

您将在组件中获得您的 ID:

<mat-button-toggle ... id="test-123">
  <button class="mat-button-toggle-button" type="button" id="test-123-button" tabindex="0" aria-pressed="false" aria-label="Text align right">
<div class="mat-button-toggle-label-content"></div>
</button>
...
</mat-button-toggle>

关于javascript - Angular *ngFor "id"标签生成不正确, `mat-button-toggle`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57801670/

相关文章:

javascript - 如何更改 JavaScript 上的 z 索引?

Angular 2 : Using ngIf inside ngFor not working

javascript - JQuery/PHP 动态下拉问题

javascript - 改进 Javascript 中的数组转换

javascript - 通过HTML5 canvas转换成webp格式后透明背景变黑

Angular http 请求无法正常工作

angular - 动态添加外部背景图像 Angular 2 sanitizer

Angular 2/Express 上传文件到服务器

angular - 将模板驱动表单与动态输入列表 (ngFor) 结合使用

angular - 尽管在现有模块中导入了 CommonModule,ngFor 仍无法工作