在 Select 动态表单选项中设置值

Set Value in Select Option of dynamic form

我创建了动态表单,在该表单中有一个下拉菜单。在那个下拉列表中,我希望有一个财政周,我想 运行 在 ts 函数中循环。

form.ts -

<div class="col-md-9" [ngSwitch]="field.type">
    <dropdown *ngSwitchCase="'dropdown'" [field]="field" [form]="form"></dropdown>
</div>

dropdown.ts -

public field: any[] = [
    {
      type: 'dropdown',
      name: 'fiscalweek',
      label: 'fiscalweek',
      placeholder: 'Fiscal Week',
      required: true,
      options: this.getWeek()
    }
];

getWeek(){
    this.week = 

    [
      { key: 'Select', label: 'ALL'},
      { key: '1', label: '1'},
      { key: '2', label: '2'},
      { key: '3', label: '3'},
      { key: '4', label: '4'},
      { key: '5', label: '5'},
      { key: '6', label: '6'},
      .
      .
      .
      { key: '53', label: '53'}
    ]
    ;

    return this.week;
  }

我想 运行 在这个 getWeek 中从 1 到 53 循环而不是硬编码。

有人可以建议我怎么做吗?

您可以通过简单的 for 循环填充 week 数组

这样试试:

Working Demo

 getWeek() {
    this.week = [];
    this.week.push({ key: "Select", label: "ALL" });
    for (var i = 1; i <= 53; i++) {
      this.week.push({ key: i.toString(), label: i.toString() });
    }
    return this.week;
 }