我在服务器上有一个如下所示的对象:
{ data: [[1,"asds"], [4, "ssd", [94, "Ads"]] }
如何在GraphQL中定义一个类型(使用graphql.js)来描述它?基本上像GraphQLList(GraphQLString | GraphQLInt)。
这可能吗?
谢谢,
答案 0 :(得分:1)
您可以尝试使用GraphQLScalarType接受任何值:
var AnyValueScalar = new graphql.GraphQLScalarType({
name: 'AnyValueScalar',
serialize: anyValue,
parseValue: anyValue,
parseLiteral(ast) {
return anyValue(ast.value);
}
});
function anyValue(value) {
return value
}
定义查询类型字段数据
var queryType = new graphql.GraphQLObjectType({
name: 'Query',
fields: {
data: {
type: AnyValueScalar,
resolve: function(_,args){
return [[1,"asds"], [4, "ssd", [94, "Ads"]]]
}
}
}
});
如果您在QraphiQL中查询如下
query {
data
}
它应该有结果
{
"data": {
"data": [
[
1,
"asds"
],
[
4,
"ssd",
[
94,
"Ads"
]
]
]
}
}