【问题标题】:Pass typescript type Problem in type-graphql在 type-graphql 中传递 typescript type 问题
【发布时间】:2020-10-08 06:47:05
【问题描述】:

我是 GraphQL 新手,我不知道如何将 TypeScript type 传递给 ReturnTypeFunction@Field 装饰器。

我的代码如下:

export type WorokingHours = [number, number];

// [ [ 8, 13 ], [ 16, 22 ] ]
@Field(() => [WorokingHours], {
   nullable: true,
   description: storeWorkingHours
})
@prop()
workingHours?: WorokingHours[];

我会收到这个错误信息:

'WorokingHours' only refers to a type, but is being used as a value here.ts(2693)

如何解决这个错误?

您是否有任何想法来实现我的商店在我的数据库中处于活动状态的持续时间?

【问题讨论】:

    标签: typescript mongoose graphql typegraphql typegoose


    【解决方案1】:

    GraphQL 规范不支持元组,因此您需要使用列表[Number] 或显式对象类型{ one: number, two: number }

    【讨论】:

      【解决方案2】:

      很简单,你定义了一个type,它只存在于typescript的编译时,而不是运行时

      对于 typegoose,无论如何您都需要手动设置数组类型,对于您的情况(在 7.2.0 上),它将是 prop 选项 { type: Number, dim: 2 }

      对于 GraphQL,我猜应该是 () => [[Number]]

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-02-03
        • 2021-11-10
        • 2020-07-03
        • 2020-08-06
        • 2017-07-10
        • 1970-01-01
        • 2020-12-08
        相关资源
        最近更新 更多