Angular TypeScript在调用后从承诺获取项
我试图解决一个问题,但不知道如何解决。 我有一个服务,它提供了一种从Contentful获取页面的方法,如下所示:Angular TypeScript在调用后从承诺获取项,angular,Angular,我试图解决一个问题,但不知道如何解决。 我有一个服务,它提供了一种从Contentful获取页面的方法,如下所示: async getPages(): Promise<Page[]> { const response = await this.cdaClient.getEntries({ content_type: "page", include: 3 }); return response.items.map(this.createPage); } p
async getPages(): Promise<Page[]> {
const response = await this.cdaClient.getEntries({
content_type: "page",
include: 3
});
return response.items.map(this.createPage);
}
private pages: Page[];
getPage(slug: string) {
return this.pages.find(page => page.slug === slug)
}
async getPages(): Promise<void> {
const response = await this.cdaClient.getEntries({
content_type: "page",
include: 3
});
this.pages = response.items.map(this.createPage);
}
我想做的是,当调用它时,将其存储在contentfulService
上,以便稍后查询它。大概是这样的:
async getPages(): Promise<Page[]> {
const response = await this.cdaClient.getEntries({
content_type: "page",
include: 3
});
return response.items.map(this.createPage);
}
private pages: Page[];
getPage(slug: string) {
return this.pages.find(page => page.slug === slug)
}
async getPages(): Promise<void> {
const response = await this.cdaClient.getEntries({
content_type: "page",
include: 3
});
this.pages = response.items.map(this.createPage);
}
有人知道我怎么做吗?想知道你为什么想要一个
承诺,但答案是:
getPage(slug: string) {
return Promise.resolve(this.pages.find(page => page.slug === slug));
}
如果不是异步运行,为什么getPage
需要返回承诺?