为啥自定义子查询类型不能分配给 GraphQLObjectType?

Posted

技术标签:

【中文标题】为啥自定义子查询类型不能分配给 GraphQLObjectType?【英文标题】:why the custom sub query type isn't assignable to GraphQLObjectType?为什么自定义子查询类型不能分配给 GraphQLObjectType? 【发布时间】:2021-03-03 08:51:48 【问题描述】:

我尝试使用 typescript 创建 graphQl 查询架构并收到此错误消息

类型参数 ' name: string;电影: 类型:GraphQLObjectType;参数: id: 类型:GraphQLScalarType; ; ;解决(父:任何,参数:任何):无效; ; ' 不可分配给类型为“Readonly>”的参数。 对象字面量只能指定已知属性,并且 'movie' 不存在于类型 'Readonly>'

const Query = new GraphQLObjectType(
    name: "Query",
    movie: 
        type: MovieType,
        args:  id:  type: GraphQLString  ,
        resolve(parent, args) ,
    ,
);

【问题讨论】:

【参考方案1】:

movie 不是传递给GraphQLObjectType 构造函数的有效参数。如果您的意图是向您的 Query 类型添加一个名为 movie 的字段,您应该这样做:

const Query = new GraphQLObjectType(
  name: "Query",
  fields: 
    movie: 
      type: MovieType,
      args:  id:  type: GraphQLString  ,
      resolve(parent, args) ,
    ,
  ,
);

【讨论】:

以上是关于为啥自定义子查询类型不能分配给 GraphQLObjectType?的主要内容,如果未能解决你的问题,请参考以下文章