我们是否需要使用async / await将返回值包装到promise中?

时间:2018-08-28 15:01:25

标签: javascript typescript async-await

当我们在异步函数中返回值时,只是想了解使用异步/等待的正确方法。什么是编写异步函数代码并使用promise返回值的正确方法?

main.ts

private async customerResponse(data: any): Promise < any > {

    const custObject: any = data;

    Promise.resolve(custObject);
    Or 
    return custObject;


}

1 个答案:

答案 0 :(得分:6)

一个async函数返回一个Promise。此外,仅在需要async关键字时才需要使用await。如果您不使用await,请不要使用async

使用async时,Promise.resolve函数的返回值实际上被解包为单个级别(我认为这是Promise.resolve功能的一部分),因此返回之间没有区别Promise.resolve(value)或仅返回value(或者返回Promise.resolve(Promise.resolve(value)))。就是说,您应该只从async函数返回所需的返回值,而不必担心进行任何其他包装。