2016-06-23 20 views
3

GraphQLで文字列の配列であるオブジェクトプロパティのスキーマを作成するにはどうすればよいですか?私は、エラーなしのデータを取得し、このクエリを実行すると、エラーがちょうど[{}]GraphQLオブジェクトのプロパティは文字列のリストである必要があります

ある

var keysType = new graphql.GraphQLObjectType({ 
    name: 'keys', 
    fields: function() { 
    key: { type: graphql.GraphQLString } 
    } 
}); 

var ColorType = new graphql.GraphQLObjectType({ 
    name: 'colors', 
    fields: function() { 
    return { 
     name: { type: graphql.GraphQLString }, 
     keys: { type: new graphql.GraphQLList(keysType) 
    }; 
    } 
}); 

ここ

{ 
    name: "colors", 
    keys: ["red", "blue"] 
} 

は私のスキーマです:私は、応答は次のようになりたいですquery {colors {name、keys}}

ただし、名前を返すクエリを実行すると、正常な応答が得られます。

クエリ{{色名}}

は、どのように私は、キーを照会するときのために文字列の配列を返すスキーマを作成するのですか?

答えて

7

私は答えを見つけました。

このクエリを使用
var ColorType = new graphql.GraphQLObjectType({ 
    name: 'colors', 
    fields: function() { 
    return { 
     name: { type: graphql.GraphQLString }, 
     keys: { type: new graphql.GraphQLList(graphql.GraphQLString) 
    }; 
    } 
}); 

クエリ{色{名前、キー}}

Iを得る鍵はgraphql.GraphQLString

graphql.GraphQLList()にスキーマになる通過します所望の結果:

{ 
    name: "colors", 
    keys: ["red", "blue"] 
} 
+1

あなたの解決策を書く時間をとっていただきありがとうございます。私は時間の束を救った! – davnicwil

関連する問題