首页 > 解决方案 > 在 Typescript 中解构函数参数

问题描述

我正在尝试为以下函数的成员提供一个类型。 args是具有data类型属性的对象UserCreateInput

所以,从这里:

createUser(parent: any, args: any, context: any) {
    return context.prisma.createUser(args.data)
}

我写了这个:

createUser(parent: any, args: {data: UserCreateInput}, context: any) {
    return context.prisma.createUser(args.data)
}

我不确定如何替换“xxx”,createUser(parent: any, xxx, context: any)所以我可以简单地返回return context.prisma.createUser(data)

标签: typescripttypes

解决方案


您可以使用对象解构语法:

createUser(parent: any, { data }: { data: UserCreateInput }, context: any) {
    return context.prisma.createUser(data)
}

不幸的是,你需要写data两次。有一个解决此问题的建议,但围绕此问题存在一些问题。


推荐阅读