簡體   English   中英

im通過將對象轉換為Angular5數組來遍歷Object。 新手

[英]im to Iterate through Object by transforming it into an array with Angular5. newbie

來自控制台日志的數據顯示如下

 { todos: Array(2) } todos: (2)[{…}, {…}] __proto__: Object 
該數據來自服務

 @Injectable() export class BeerServiceService { beerUrl = 'http://localhost:3000/todos'; beers: Observable < ManageBeer[] > ; beer = []; constructor(private http: HttpClient) {} addBeer(beer: ManageBeer): Observable < ManageBeer > { return this.http.post < ManageBeer > (this.beerUrl, beer); } getBeers(): Observable < ManageBeer[] > { return this.beers = this.http.get < ManageBeer[] > (this.beerUrl); } } 

我正在嘗試將Object轉換為數組,以便能夠通過下面的代碼進行迭代。

 export class ManagerBeersComponent implements OnInit { result = []; constructor(private beerSer: BeerServiceService) { } ngOnInit() { this.beerSer.getBeers().subscribe(beer => { this.result = beer; console.log(this.result); }); } } 
resuERROR錯誤:嘗試與'[object Object]'進行比較時出錯。 lt只允許使用數組和可迭代對象作為對象返回,並且出現此錯誤。

您的問題不是很清楚。 但是我假設您正在嘗試對引起錯誤的對象進行* ngFor。 嘗試將數組分配給this.result

this.beerSer.getBeers().subscribe(beer => {
  this.result = (beer as any).todos;
  console.log(this.result);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM