从操作变量中获取类型列表
Get list of types from operation variables
我有一个操作,我想得到一个包含它的变量和类型的列表。
例如。给定操作
query getResource($id: ID!, $title: String) {
resource(id: $id, title: $title) {
id
title
content
}
}
我想要这样的东西
[{type: "ID", required: true, name: "id"}, {type: "String", required: false, name: "title"}]
这容易实现吗?
编辑:我想我想做的是从一个 VariableDefinitionNode
到一个包含我想要的所有信息的对象,例如 type
、defaultValue
、required
, name
.
如果您更改模式(假设您可以在服务器上将此数据生成为这种形状),您应该能够实现此功能
type Query {
resource ($id: ID!, $title: String): [Variable]
}
type Variable {
type: String!
required: Boolean!
name: String!
...
}
然而,这是一个非常通用的语法,返回一个类似这样的值数组。如果你的资源结构是已知的,你最好定义它并删除 name 参数,因为它变得多余。 (我正在考虑在您的客户端应用程序中进行查找)
type Query {
resource ($id: ID!, $title: String): Resource
}
type Resource {
id: Variable!
title: Variable
content: Variable
}
type Variable {
type: String!
required: Boolean!
...
}
我有一个操作,我想得到一个包含它的变量和类型的列表。
例如。给定操作
query getResource($id: ID!, $title: String) {
resource(id: $id, title: $title) {
id
title
content
}
}
我想要这样的东西
[{type: "ID", required: true, name: "id"}, {type: "String", required: false, name: "title"}]
这容易实现吗?
编辑:我想我想做的是从一个 VariableDefinitionNode
到一个包含我想要的所有信息的对象,例如 type
、defaultValue
、required
, name
.
如果您更改模式(假设您可以在服务器上将此数据生成为这种形状),您应该能够实现此功能
type Query {
resource ($id: ID!, $title: String): [Variable]
}
type Variable {
type: String!
required: Boolean!
name: String!
...
}
然而,这是一个非常通用的语法,返回一个类似这样的值数组。如果你的资源结构是已知的,你最好定义它并删除 name 参数,因为它变得多余。 (我正在考虑在您的客户端应用程序中进行查找)
type Query {
resource ($id: ID!, $title: String): Resource
}
type Resource {
id: Variable!
title: Variable
content: Variable
}
type Variable {
type: String!
required: Boolean!
...
}