📅  最后修改于: 2023-12-03 15:15:25.496000             🧑  作者: Mango
GraphQL是一种用于API的查询语言,它提供了一种更高效,更强大的方式来获取和操纵数据。在GraphQL中,嵌套查询是一种常见的查询模式,它使开发人员能够轻松地在单个GraphQL查询中获取多个相关数据。
在GraphQL中,嵌套查询可以通过使用字段选择器来轻松地构造。嵌套查询的一般语法如下所示:
{
field1 {
field11
field12 {
field121
field122
}
}
field2 {
field21
field22 {
field221
field222
field223 {
field2231
field2232
}
}
}
}
在这里,我们可以看到每个字段都可以有一个或多个子字段,这使得我们能够轻松地从多个源获取数据,并将其组合成一个单一的查询结果。
让我们看一个简单的例子,说明如何使用嵌套查询从API中获取数据:
const query = `
{
author(id: 1) {
name
books {
title
publisher {
name
}
}
}
}`;
fetch('/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
query,
}),
})
.then(res => res.json())
.then(res => console.log(res.data))
.catch(console.error);
在这里,我们正在获取具有ID 1的作者的名称,以及他们写的每本书的标题和出版商的名称。我们可以看到我们使用嵌套查询语法从多个源中提取数据,并将其组合成一个单一的结果。
嵌套查询是GraphQL中一个非常有用的功能,它使我们能够轻松地获取和组合多个相关数据。在JavaScript中,我们可以使用简单的语法来构造嵌套查询,并从API中获取我们需要的数据。