How to
ExpressのGraphQLで相互のRelation関係にあるTypeをimportする方法
ExpressでGraphQLを実装している時に、TypeでRelationの関係を作ろうとして
1
Error: Expected undefined to be a GraphQL type
というエラーに出会いました。
原因はType同士でimportしていたために、一方のTypeがundefinedになってしまうことです。
この問題に対応してみました。
GraphQLのType同士で循環参照する場合
まず今回エラーが発生したコードは書きのようなものです。
それぞれのTypeからお互いをimportしています。
1 2 3 4 5 6 7 8 9 10 11
import UserType from './UserType'; const PostType = new GraphQLObjectType({ name: 'Post', fields: { title: { type: GraphQLString }, user: { type: UserType } } }); export default PostType;