Graphql Gatsby-使用组在createResolver内运行查询
我想使用Graphql Gatsby-使用组在createResolver内运行查询,graphql,gatsby,Graphql,Gatsby,我想使用createResolvers来运行使用group的查询,但我认为目前不可能这样做。根据,似乎runQuery当前接受filter和sort查询参数,但不接受group。我希望runQuery将支持group(基于),但我找不到任何使用runQuery 如果可能,我如何使用createResolvers为以下graphql查询运行使用group的查询 query { allFile(filter: { internal: { mediaType: { eq: "te
createResolvers
来运行使用group
的查询,但我认为目前不可能这样做。根据,似乎runQuery
当前接受filter
和sort
查询参数,但不接受group
。我希望runQuery
将支持group
(基于),但我找不到任何使用runQuery
如果可能,我如何使用createResolvers
为以下graphql查询运行使用group
的查询
query {
allFile(filter: { internal: { mediaType: { eq: "text/markdown" } } }) {
group(field: sourceInstanceName) {
fieldValue
totalCount
}
}
}
对于上下文,我有两个文件夹(编码和配方),我从中获取降价文件。这是我的gatsby config.js
:
const path=require('path'))
module.exports={
插件:[
{
解析:`gatsby源文件系统`,
选项:{
名称:`coding`,
path:path.resolve(uu dirname,`src/contents/coding`),
},
},
{
解析:`gatsby源文件系统`,
选项:{
名称:`recipes`,
path:path.resolve(uu dirname,`src/contents/recipes`),
},
},
{
决议:`盖茨比变压器备注',
},
],
}
目前,我可以使用runQuery
运行使用filter
的查询。这是我的gatsby node.js
:
exports.createResolvers=({createResolvers})=>{
CreateResolver({
查询:{
食谱:{
键入:`[File!]!`,
解析(源、参数、上下文、信息){
返回context.nodeModel.runQuery({
查询:{
过滤器:{
内部:{mediaType:{eq:'text/markdown'}},
sourceInstanceName:{eq:'recipes'},
},
},
类型:`File`,
firstOnly:错,
})
},
},
编码:{
键入:`[File!]!`,
解析(源、参数、上下文、信息){
返回context.nodeModel.runQuery({
查询:{
过滤器:{
内部:{mediaType:{eq:'text/markdown'}},
sourceInstanceName:{eq:'coding'},
},
},
类型:`File`,
firstOnly:错,
})
},
},
},
})
}
但是现在我想使用createResolver
来runQuery
使用group
。这可能吗?如果是,怎么做
我已经在
当前,主页(src/pages/index.jsx
)显示文件夹(编码和配方)以及该文件夹中的标记文件计数:
使用以下页面查询:
export const query=graphql`
质疑{
所有文件(筛选器:{internal:{mediaType:{eq:“text/markdown”}}}){
组(字段:sourceInstanceName){
字段值
总数
}
}
}
`
我想创建一个解析程序来分组并使用它来代替上面的页面查询