0
在我的ngOnInit()方法中,我調用數據服務來檢索產品數據。在此調用之後,我立即調用本地方法getProductImages(),以從以前檢索的產品中獲取圖像,但出現getProducts()調用結果的產品Product []數組錯誤未定義。顯然,在調用dataService.getProducts()完成之前調用getProductImages()方法。代碼如下所示。我該如何解決。角度2:HTTP數據由於競爭條件而不存在
export class WelcomeComponent implements OnInit {
products: Product[];
productImages: ProductImage[];
constructor(private welcomeService: WelcomeService,
private dataService: DataService) { }
ngOnInit() {
this.dataService.getProductsDb()
.then(products => {
this.products = products;
console.log('WelcomeComponent products = ' + new Date() +
JSON.stringify(this.products))
this.getProductImages();
console.log('productImages = ', JSON.stringify(this.productImages))
})
// .then(this.dataService.getProductImages();)
}
private getProductImages() {
for(var i=0; i < this.products.length; i++) {
this.productImages[i]._id = this.products[i]._id;
this.productImages[i].name = this.products[i].name;
this.productImages[i].price = this.products[i].price;
this.productImages[i].image = this.products[i].image[0];
}
}
}
你不在您的產品類中有圖像:字符串?如果你這樣做,那麼顯示每個產品的圖像只是
請向我們展示返回給您的服務的產品json的定義以及onNgInit中的日誌語句的輸出 – GreyBeardedGeek