如何在Angular 6中显示字符串数组

时间:2018-08-09 14:24:18

标签: javascript angular typescript

我正在处理一个角度为6的项目,在该项目中我想将键显示为标签,并在选择选项中显示值。我已经使用下面的代码来生成输出,但是它似乎不起作用。我上一个项目使用的代码工作正常,我希望输出类似但角度为6。

component.ts中的代码

headerMapper(){      
  this.clientService.getHeaders().subscribe(
    res=>{
      let resSTR = JSON.stringify(res);
      let resJSON = JSON.parse(resSTR);
      let str=resJSON._body;
      this.mapper = Object.keys(JSON.parse(str)).map(arr => {
        return `${arr}: ${JSON.parse(str)[arr].join(', ')}`;
      });
      console.log(this.mapper);
      this.ismapped=false;
    }
  );
}

我的html中的代码

<div>
  <p *ngFor="let element of mapper">{{element | json}}</p>
  <form *ngFor ="let map of mapper">
    <mat-form-field>
      <mat-select placeholder="{{map}}">
        <mat-option>None</mat-option>
        <mat-option *ngFor="let option of map"  [value]="option">{{option}}</mat-option>
      </mat-select>
    </mat-form-field>
  </form>
</div>

我以前的项目使用的代码。

<c:forEach var="entry" items="${headerColumns.entrySet()}">
  <div class="input-group pt-2">
    <label class="col-lg-2 col-form-label">${entry.key}</label>
    <div class="col-lg-10">
      <form:select path="${entry.key}" class="form-control col-lg-5">
        <form:option value="-1" label="--- select ---" />
        <form:options items="${entry.value}"></form:options>
      </form:select>
    </div>
  </div>
</c:forEach>

0 个答案:

没有答案