我们要为现有的graphql-schema创建一个文档文件(然后将其包含在我们的应用程序中)。 现在,我们导出schema.graphql,然后使用graphql-markdown创建一个.md文件。
我们想实现的是,创建的文档可能会忽略某些对象或属性,可能类似于不推荐使用的字段。现在,最终文档文件应仅包括未标记为忽略的对象。
我们该怎么做?
我正在搜索现有的解决方案或Swagger等文档软件。
答案 0 :(得分:0)
您可以使用任意字符串(例如@Hidden
)为要排除的类型和字段的描述添加前缀。然后只需派生graphql-markdown
并对其进行修改,以排除那些对象和字段here:
function isIgnored(typeOrField) {
return typeOrField.description.startsWith('@Hidden')
}
const objects = types.filter(type => {
return type.kind === 'OBJECT' && type !== query && type !== mutation && !isIgnored(type)
})
和here:
const fields = (isInputObject ? type.inputFields : type.fields)
.filter(field => !isIgnored(field))