【问题标题】:Displaying angular 6 material radio buttons dynamically in multiple columns在多列中动态显示角度 6 材质单选按钮
【发布时间】:2019-02-11 22:14:20
【问题描述】:

如何在多列上显示动态 Angular Material 单选按钮,如下图所示:

从可能的选项中,我尝试使用mat-grid-list,因为文档说它会自动计算它将有多少行。但是,这不起作用。

<mat-radio-group>
  <mat-grid-list cols="3">
    <mat-grid-tile *ngFor="let radioBut of objectlist">
      <mat-radio-button [value]="radioBut">
        {{radioBut.label}}
      </mat-radio-button>
    </mat-grid-tile>
  </mat-grid-list>
</mat-radio-group>

【问题讨论】:

  • 我没明白你到底是什么问题
  • 我有一个单选按钮列表作为输入,我必须在多列中显示。我可以在一行或一列中轻松地水平或垂直显示,但我没有看到如何在多列上显示。

标签: angular layout radio-button angular-material


【解决方案1】:

好的,不确定您是否可以使用 Angular Material 网格系统来实现,但您可以将 CSS 与 &lt;ul&gt;&lt;li&gt; 元素一起使用:

<ul>
  <li *ngFor="let radioBut of objectlist">{{radioBut.label}}</li>
</ul>

在你的 CSS 文件中:

ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: 4em;
}

请参阅this StackOverflow answer 了解更多信息。

【讨论】:

  • 谢谢,CSS也可以
【解决方案2】:

你可以试试下面的代码:

<mat-radio-group>
 <mat-grid-list cols="3">
  <mat-grid-tile *ngFor="let radioBut of objectlist"
   [colspan]="1">
   <mat-radio-button [value]="radioBut">
    {{radioBut.label}}
   </mat-radio-button>
 </mat-grid-tile>
</mat-grid-list>

您将有 4 列。

【讨论】:

  • 感谢您的回答。现在我可以在多列中看到单选按钮。还有一件事我没有提到,因为我认为很清楚(对不起-我的错误):按钮的顺序很重要,即需要生成第一列,然后是第二列,这样 Radio2 就在下面Radio1,Radio2下的Radio3
猜你喜欢
  • 2021-10-07
  • 2018-06-09
  • 1970-01-01
  • 2016-02-25
  • 1970-01-01
  • 1970-01-01
  • 2020-03-20
  • 2021-12-10
  • 2018-11-03
相关资源
最近更新 更多