2017-12-13 7 views
0

私はこのようになり、サーバ上のオブジェクトを持っている:文字列と数字のリストのGraphQLTypeを定義する方法は?

{ data: [[1,"asds"], [4, "ssd", [94, "Ads"]] }

は、どのように私はこれを記述するために(graphql.jsを使用して)GraphQLで型を定義できますか?基本的にGraphQLList(GraphQLString | GraphQLInt)のようなものです。

これは可能ですか?

おかげで、

答えて

1
あなたが任意の値を受け入れるためにGraphQLScalarTypeを使用しようとすることができ

var AnyValueScalar = new graphql.GraphQLScalarType({ 
    name: 'AnyValueScalar', 
    serialize: anyValue, 
    parseValue: anyValue, 
    parseLiteral(ast) { 
     return anyValue(ast.value); 
    } 
}); 

function anyValue(value) { 
    return value 
} 

は、クエリのタイプフィールドのデータあなたが

以下のようQraphiQLに問い合わせる場合

var queryType = new graphql.GraphQLObjectType({ 
    name: 'Query', 
    fields: { 
    data: { 
     type: AnyValueScalar, 
     resolve: function(_,args){ 
     return [[1,"asds"], [4, "ssd", [94, "Ads"]]] 
     } 
    } 
    } 
}); 

を定義します

query { 
    data 
} 

結果が必要です

{ 
    "data": { 
    "data": [ 
     [ 
     1, 
     "asds" 
     ], 
     [ 
     4, 
     "ssd", 
     [ 
      94, 
      "Ads" 
     ] 
     ] 
    ] 
    } 
} 
+0

ありがとうございます!これは機能します。 – clu

関連する問題