im对将显示Wordpress / Woocommerce商店产品的Ionic-App进行编码。 现在,我希望用户能够收藏产品,将它们存储在本地存储中,并在另一页上显示它们。
一切正常,但我的Wordpress.service.ts文件中的“ getAllFavoritePosts”功能中的ForEach-Loop出现了一些问题:
getAllFavoritePosts(page = 1): Observable<any[]> {
this.favUrl = this.url + this.auth + '&_embed' + '&include=0,';
//this is the loop i mentioned
this.storage.forEach((value,key,index) => {
this.favUrl = this.favUrl + key + ',';
})
let options = {
observe: "response" as 'body',
params: {
per_page: '12',
page: ''+page
}
};
return this.http.get<any[]>(`${this.favUrl}`, options).pipe(
map(resp => {
this.pages = resp['headers'].get('x-wp-totalpages');
this.totalProductsFavs = resp['headers'].get('x-wp-total');
let data = resp['body'];
for (let post of data) {
post.media_url = post['images'][0]['src'];
}
return data;
})
)
}
在执行此代码之前,我需要先完成循环。 现在,带有喜爱产品ID的Url为空,因为在完全执行循环之前将其返回。
如果需要,这是我home.ts中的函数,上面的函数称为:
async loadFavs() {
let loading = await this.loadingCtrl.create({
message: 'Finde Deals'
});
await loading.present();
this.wps.getAllFavoritePosts().subscribe(res => {
this.countFavs = this.wps.totalProductsFavs;
this.favs = res;
loading.dismiss();
});
}
已在此页面上找到了类似的问题,但仍然无法解决我的问题。 希望你们能帮助我!