编译错误类型转换返回类型Promise <any []>异步

时间:2020-04-08 20:24:32

标签: typescript

我有这个异步功能:

async getItems() : Promise<any[]> {} 

会获取一些数据。调用Table组件上的函数:

dataSource={this.props.itemsStore.getItems()}

错误消息:

Type 'Promise<any[]>' is missing the following properties from type 'any[]': length, pop, push, concat, and 28 more.

1 个答案:

答案 0 :(得分:0)

getItems()返回一个承诺。如果您想从承诺中获得价值,则必须使用await,因为您正在函数上使用异步。

所以试试这个:

dataSource = await this.props.itemsStore.getItems();

编辑

在TypeScript中从promise中获取价值的另一种方法是这样的:

this.props.itemsStore.getItems().then(items => dataSource = items);