2016-11-02 3 views

答えて

1

カスタムタイプはhttp://graphql.org/graphql-js/type/#example-1です。これにより、APIユースケースに基づいてカスタムタイプを作成することができます。私は、これを行うことが、何かが設計され、さらに吟味される必要のある「コード臭」のようなものであることを捨ててしまいます。

var StringOrBool = new GraphQLScalarType({ 
    name: 'StringOrBool', 
    serialize: parseStringOrBool, 
    parseValue: parseStringOrBool, 
    parseLiteral(ast) => parseStringOrBool(ast.value) 
}); 

function parseStringOrBool(value) { 
    return (typeof value === 'string' || typeof value === 'boolean') ? 
    value : 
    null; 
} 

あなたは正しさのためにこれをチェックする必要がありますが、あなたはそのための連合を使用することができます

0

を動作するはずです:

http://graphql.org/graphql-js/type/#graphqluniontype

しかしgriffith_joelが示唆したように - 何を詳しく見ますあなたはその1つのフィールドをオーバーロードすることによってやろうとしており、それが2つの別個のフィールドとして良いと思っています。あなたの意図は分かっていませんが、おそらくヌル以外の「成功」フィールドとオプションの「ユーザー名」フィールドがあります。

関連する問題