流承诺:由于承诺[1]与<entitytype>不兼容,因此无法返回请求

时间:2019-01-22 09:25:15

标签: javascript node.js flowtype

我有一个entityType产品,并使用它使用DynamoDB

将数据插入到AWS.DynamoDB.DocumentClient

Product.js:

export class Product {
    id: string;

    partNumber: string;

    createdAt: Date;
}

ProductService.js:

export async function addProduct(request: Product): Product {
  try {
    if (request.id === undefined) {
      request.id = uuid.v4();
    }
    const params = {
      TableName: TABLE_NAME,
      Item: request,
    };
    await dynamoDBClient.put(params).promise();
    return request;
  } catch (err) {
    logger.error(`Error ${err}`);
    throw Error(err);
  }
}

运行流量检查./src/ 时 在退货请求时出现以下错误:

由于Promise [1]

不兼容,因此无法返回请求
Product
 [2]

即使请求是Product类型的,它仍然显示Promise Error。我们该如何解决?

1 个答案:

答案 0 :(得分:1)

异步函数总是返回promise。事件认为您正在退货the return type of the function should be Promise<Product>