简体   繁体   English

如何在离子表单上动态创建按钮

[英]How to dynamically create buttons on an ionic form

I would like to dynamically create buttons in ionic.我想在离子中动态创建按钮。 I can't find any information on this.我找不到这方面的任何信息。 I tried a couple of quick tests which failed.我尝试了几个失败的快速测试。

  week = `      <ion-row>
    <ion-col>
      <ion-label (click)="showDate(11)">11</ion-label>
    </ion-col>
    <ion-col>
      <ion-label (click)="showDate(12)">12</ion-label>
    </ion-col>
    <ion-col>
      <ion-label (click)="showDate(13)">13</ion-label>
    </ion-col>
    <ion-col>
      <ion-label (click)="showDate(14)">14</ion-label>
    </ion-col>
    <ion-col>
      <ion-label (click)="showDate(15)">15</ion-label>
    </ion-col>
    <ion-col>
      <ion-label (click)="showDate(16)">16</ion-label>
    </ion-col>
    <ion-col>
      <ion-label (click)="showDate(17)">17</ion-label>
    </ion-col>
  </ion-row>`
  week2 = "      <ion-row><ion-col>  <ion-label (click)='showDate(11)'>11</ion-label></ion-col><ion-col>  <ion-label (click)='showDate(12)'>12</ion-label></ion-col><ion-col>  <ion-label (click)='showDate(13)'>13</ion-label></ion-col><ion-col>  <ion-label (click)='showDate(14)'>14</ion-label></ion-col><ion-col>  <ion-label (click)='showDate(15)'>15</ion-label></ion-col><ion-col>  <ion-label (click)='showDate(16)'>16</ion-label></ion-col><ion-col>  <ion-label (click)='showDate(17)>17</ion-label></ion-col></ion-row>"

Basically I need to create a form or page based on passed in parameters which could drastically change the layout of the form.基本上我需要根据传入的参数创建一个表单或页面,这可能会极大地改变表单的布局。 It would be really inefficient to make a couple of dozen pages.制作几十页确实效率低下。 It will also create a maintenance nightmare to have several if statements per button with numerous buttons that may or may not be visible.它还将创建一个维护噩梦,每个按钮都有多个 if 语句,其中有许多可能可见也可能不可见的按钮。 Any suggestions?有什么建议么?

Since you tagged angular, I guess you're using it, so you can use *ngFor, like the code bellow:由于您标记了 angular,我猜您正在使用它,因此您可以使用 *ngFor,如下面的代码:

<ion-list padding *ngFor="let item of items; let i = index">
        <ion-item (click)="showDate(i)">{{ i }}</ion-item>
</ion-list>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM