GraphQL:必须是输出类型,但得到:未定义错误
Posted
技术标签:
【中文标题】GraphQL:必须是输出类型,但得到:未定义错误【英文标题】:GraphQL : must be Output Type but got: undefined Error 【发布时间】:2019-09-19 10:20:26 【问题描述】:我试图从数据库中获取 mysql 日期并使用 graphql 输出它。我的应用程序构建和运行没有任何问题。但是在graphql ui中,它说下面的错误。
"errors": [
"message": "The type of Tour.arrival_date must be Output Type but got: undefined."
]
我的 type.js 文件如下所示。
let
GraphQLID,
GraphQLString,
GraphQLInt,
GraphQLFloat,
GraphQLObjectType,
GraphQLNonNull,
GraphQLDate,
GraphQLList
= require('graphql')
// Defines the type
module.exports = new GraphQLObjectType(
name: 'Tour',
description: 'A Tour',
fields:
id:
type: new GraphQLNonNull(GraphQLID)
,
name:
type: new GraphQLNonNull(GraphQLString)
,
pax_count:
type: GraphQLInt
,
arrival_date:
type: GraphQLDate
)
我正在使用以下库作为 ISO 日期。
https://www.npmjs.com/package/graphql-iso-date
有人可以告诉我这可能是什么问题吗? 请注意,我对 GraphQL 真的很陌生。
谢谢 佛教
【问题讨论】:
【参考方案1】:您正在从 graphql
导入 GraphQLDate
,但 graphql
不会导出具有该名称的变量,因为 GraphQL.js 中没有内置的 Date 标量。如果您使用的是graphql-iso-date
,请按照文档中的说明导入适当的标量:
const GraphQLDate = require('graphql-iso-date')
【讨论】:
嗨@daniel-rearden 非常感谢。这解决了问题。以上是关于GraphQL:必须是输出类型,但得到:未定义错误的主要内容,如果未能解决你的问题,请参考以下文章
节点 - GraphQL - Ad.user 字段类型必须是输出类型,但得到:未定义
带有 Keystone 的 GraphQL 需要字段类型必须是输出类型,但得到:未定义