ngFor不显示数组数据,此数据从Firebase检索

时间:2018-04-22 09:39:07

标签: angular typescript firebase firebase-realtime-database

嘿,我知道这个问题很多,但正常的修复不起作用。

TS

onChangeFormType(changeFormType) {
this.serverData.getData('questionnaire/' + changeFormType)
  .subscribe(
    (response: Response) => {
      this.formType = response.json();
      let key = Object.keys(this.formType);
      for (let i = 0; i < key.length; i++) {
        this.currentValue.push(this.formType[key[i]])
      }
      console.log('current Value', this.currentValue);
    },
    (error) => console.log('Form Error', error)
  )}

console.log('current Value', this.currentValue);中效果很好。

但是,当我在DOM中运行ngFor循环时,它不起作用。

enter image description here

HTML

<div class="col-9" *ngFor="let data of currentValue">
  <div formGroupName="questions">
    <div class="form-Group">{{ data.sno }}</div>
      <br>
      <div class="from-Group">{{ data.question}}</div>
    </div>
  <div formGroupName="options">
    <label>
      <input type="radio" formControlName="op1">{{ data.options}}
    </label></div>

1 个答案:

答案 0 :(得分:1)

optionsquestionsno属性是items - 每个data - 对象数组中元素的属性。因此,您可以在另一个*ngFor内嵌套<div class="col-9" *ngFor="let data of currentValue"> <div *ngFor="let item of data.items"> <div formGroupName="questions"> <div class="form-Group">{{ item.sno }}</div> <br> <div class="from-Group">{{ item.question }}</div> </div> <div formGroupName="options"> <label> <input type="radio" formControlName="op1">{{ item.options }} </label> </div> </div> </div> 。像这样:

item.options

尽管DECLARE @FilePath varchar(255) = 'C:\Backups\'; BACKUP DATABASE [MyDatabase] TO DISK @FilePath + 'MyDatabase.bak'; 是一个对象,您可能希望以另一种方式处理它,具体取决于它的结构。