2017-01-29 63 views
0

沒有人知道這是一個錯誤還是代碼問題?Angular2 Http在html中顯示錯誤的數據

目前我正在嘗試使用forEach與http get來檢索rss提要,它只顯示來自一個rss提要的數據應該不是這種情況。但是,在控制檯日誌中,它正在模擬正確的行爲。

請幫忙,我一直在努力解決幾天。

我的HTML代碼

<div *ngFor="let category of favouritecategories | async"><h3 class="header" [id]="category.name">{{category.name}}</h3> 

<ion-item-sliding *ngFor="let item of xmlItemsApac; let i=index" #slidingItem> 

    <ion-item *ngIf="i<articlecount" text-wrap> 
    <div class (click)="openbrowser(item.link)"><h2>{{item.title}}</h2> 
    <p class="block-with-text"> {{item.description}}</p></div> 
    </ion-item> 
    <ion-item-options side="right"> 
    <button ion-button color="custom" (click)="bookmark(item.title,item.description,item.link,slidingItem)"><ion-icon name="bookmark"></ion-icon>Bookmark</button> 
    </ion-item-options> 

    <ion-item *ngIf="i>articlecount" [hidden]="!showMoreAmericas" text-wrap> 
    <div class (click)="openbrowser(item.link)"><h2>{{item.title}}</h2> 
    <p class="block-with-text"> {{item.description}}</p></div> 
    </ion-item> 
    <ion-item-options side="right"> 
    <button ion-button color="custom" (click)="bookmark(item.title,item.description,item.link,slidingItem)"><ion-icon name="bookmark"></ion-icon>Bookmark</button> 
    </ion-item-options> 

</ion-item-sliding> 

<button ion-item (click)="toggleMoreArticle()" text-center detail-none large> 
    <h4 class="showMoreText"><ion-icon name="arrow-down" *ngIf="!arrows"></ion-icon> 
    <ion-icon name="arrow-up" *ngIf="arrow"></ion-icon> {{buttonText}}</h4> 
</button><br/> 

</div> 

我的打字稿

this.af.database.list(`/users/${userid}/favourites`) 
    .subscribe(snapshots => { 
    snapshots.forEach(snapshot => { 
     this.Apac = this.http.get(snapshot.regions[0].rss) 
     this.Apac.map(res => res.text()) 
      .subscribe((data) => { 
      this.parseXML(data) 
       .then((data) => { 
       this.xmlItemsApac = data; 
       console.log(this.xmlItemsApac) 
       }); 
      }); 
    }); 
    }); 

回答

0

要更換this.xmlItemsApac你的RSS條目。你需要把它初始化爲空數組。 this.xmlItemsApac=[]

,推動價值

this.af.database.list(`/users/${userid}/favourites`) 
    .subscribe(snapshots => { 
    snapshots.forEach(snapshot => { 
     this.Apac = this.http.get(snapshot.regions[0].rss) 
     this.Apac.map(res => res.text()) 
      .subscribe((data) => { 
      this.parseXML(data) 
       .then((data) => { 
       this.xmlItemsApac.push(data); 
       console.log(this.xmlItemsApac) 
       }); 
      }); 
    }); 
    }); 
+0

@suraj嗨,有什麼我需要我的html做的一樣好,但它似乎是工作 –

+0

離子項目滑動應該是裏面'離子列表' –

+0

是的,它已經在離子列表裏面了,但它沒有在我的視圖和我的控制檯日誌中顯示任何內容,它正在渲染3個數組 –