Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angular2中*ngFor中迭代对象的问题_Angular_Typescript - Fatal编程技术网

angular2中*ngFor中迭代对象的问题

angular2中*ngFor中迭代对象的问题,angular,typescript,Angular,Typescript,我在subscribe中有一个数组,如下所示 [Discount Condition:Array(3), Stay Consition:Array(2)] Discount Condition:Array(3) 0:object EventType:"success" Heading:"Discount Condition" Help:"Terms" 1:object EventType:"success" Heading:"Discount Condition"

我在subscribe中有一个数组,如下所示

[Discount Condition:Array(3), Stay Consition:Array(2)]
Discount Condition:Array(3)
0:object
   EventType:"success"
   Heading:"Discount Condition"
   Help:"Terms"
1:object
   EventType:"success"
   Heading:"Discount Condition"
   Help:"Terms"
2:object
   0:object
   EventType:"success"
   Heading:"Discount Condition"
   Help:"Terms"

Stay Condition:Array(2)
0:object
1:object
我试着用组件html打印它,比如

<div *ngFor="let item of Term">
     {{item.Heading}}
</div>
如果我用inspect元素检查,它会说

<!--template bindings={
  "ng-reflect-ng-for-of": ""
}-->
下面是函数

getTerms(){
    this.quoteService.getTerms()
    .subscribe(
      terms => {
        this.terms = terms.resultData.Terms;
        this.notes = terms.resultData.ImpNotes;
        this.exclusions = terms.resultData.Exclusions;
        var arr=[];
        var strHeading;
        for(let i=0;i<this.terms.length;i++) {
          strHeading=this.terms[i].Heading;
          if (arr.indexOf(strHeading) >= 0) {
            this.uniqTerm[strHeading].push(this.terms[i]);
          } 
          else {
            if (!this.uniqTerm[strHeading])
               this.uniqTerm[strHeading] = [];
               this.uniqTerm[strHeading].push(this.terms[i]);
               this.Term.push(this.uniqTerm);
               arr.push(strHeading);
          }         
        }        
        console.log(this.Term);
      },
      response => {
        if (response.status == 404) {
          //this.router.navigate(['NotFound']);
        }
      });
  }
有人能指出我哪里出错了吗?

这个词似乎是一个数组

差不多

<div *ngFor="let item of Term[0]">
     {{item.Heading}}
</div>
这将是一个肮脏的检查,看看你的数据是否正确

然后如果你想迭代这些数组

<div *ngFor="let item of Term">
     <div *ngFor="let elem of item">
           {{elem?.Heading}}
     </div>
</div>

可能有用。

这还不够。请提供更多代码。@GünterZöchbauer代码有问题,请更新check@NikhilRadadiya数组中的对象是否具有Heading属性?你能从这些对象中包含一个console.log吗?@NikhilRadadiya我很难理解你的数据结构:-是保留考虑和折扣条件数组还是对象?很抱歉,如果我是console.logtypeof this.Term;然后它回来了object@NikhilRadadiya*ngFor只在数组上迭代,不在对象上迭代。