Array of Integers
またはString
を返すことができるgraphql型を作成したいと思います。
ユニオンをunion CustomVal = [Int] | String
の形式で使用しようとしましたが、エラーが返されます。
スキーマ宣言は次のとおりです。
union CustomValues = [Int] | String
type Data {
name: String
slug: String
selected: Boolean
values: CustomValues
}
エラーは:
node_modules/graphql/error/syntaxError.js:24
return new _GraphQLError.GraphQLError('Syntax Error: ' + description, undefined, source, [position]);
Syntax Error: Expected Name, found [
GraphQL request (81:23)
80:
81: union CustomValues = [Int] | String
これはgraphqlで行うことは可能ですか?そうでない場合は、これを行うための代替案を提案できますか?.
ユニオンのドキュメントにNote that members of a union type need to be concrete object types; you can't create a union type out of interfaces or other unions.
とあるので、これを尋ねます
どんな解決策も非常に役に立ちます。
これに従います https://github.com/facebook/graphql/issues/215 、Graphqlは現在スケーラーユニオンタイプをサポートしていません。これを行うことができます
union IntOrString = IntBox | StringBox
type IntBox {
value: Int
}
type StringBox {
value: String
}
または、カスタムタイプを使用できます。これを参照してください graphql、union scalar type?