是否可以合并两个GraphQLSchema实例?
我希望编写一个类似于是否可以合并两个GraphQLSchema实例?,graphql,graphql-js,Graphql,Graphql Js,我希望编写一个类似于Object.assign或或merge的函数,但它对GraphQLSchema对象进行操作 假设我有两个实例,分别称为Base和Other,我想将Other合并到Base中以生成一个新的实例结果 在结果中,只存在一个基本字段或其他字段的字段由其原始GraphQLFieldConfig 这两个字段中的字段都减少为另一个字段中的GraphQLFieldConfig 看起来似乎没有记录在案的方法来做到这一点。对吗?如果我选择(相当危险的)未记录路径,我会注意到我可以利用对象的
Object.assign
或或merge
的函数,但它对GraphQLSchema
对象进行操作
假设我有两个实例,分别称为Base和Other,我想将Other合并到Base中以生成一个新的实例结果
- 在结果中,只存在一个基本字段或其他字段的字段由其原始
GraphQLFieldConfig
- 这两个字段中的字段都减少为另一个字段中的
GraphQLFieldConfig
看起来似乎没有记录在案的方法来做到这一点。对吗?如果我选择(相当危险的)未记录路径,我会注意到我可以利用对象的内部属性:
,但我不想那样做
如有任何建议,将不胜感激。提前谢谢 请检查图书馆。我想这可能对你有帮助。请查一下图书馆。我想这可能会对您有所帮助以下是我的解决方案:
const { mergeTypes } = require('merge-graphql-schemas');
const { printSchema, parse } = require('graphql');
const typeArray = graphqlSchemas.map(printSchema);
const schema = mergeTypes(typeArray, { all: true });
try {
parse(schema);
} catch (err) {
console.log(err);
}
GraphQLSchema
是GraphQLSchema
类型。就我而言,它是数组
printSchema
将GraphQLSchema
转换为字符串模板架构
mergeTypes
将所有字符串模板架构合并为一个
为了安全起见,请使用try/catch
验证模式是否有效。以下是我的解决方案:
const { mergeTypes } = require('merge-graphql-schemas');
const { printSchema, parse } = require('graphql');
const typeArray = graphqlSchemas.map(printSchema);
const schema = mergeTypes(typeArray, { all: true });
try {
parse(schema);
} catch (err) {
console.log(err);
}
GraphQLSchema
是GraphQLSchema
类型。就我而言,它是数组
printSchema
将GraphQLSchema
转换为字符串模板架构
mergeTypes
将所有字符串模板架构合并为一个
并且,为了安全起见,请使用try/catch
验证架构是否有效。使用“graphql工具”中的合并架构,可以合并GraphQLSchema对象
使用“graphql工具”中的合并架构,可以合并GraphQLSchema对象
此库似乎不支持合并GraphQLSchema
对象。它只支持合并graphql字符串架构。此库似乎不支持合并GraphQLSchema
对象。它只支持合并graphql字符串模式。