我有以下查询:
query MyQuery($today: Date) {
allMovies(
filter: {
info: { endDate: { gte: $today }, startDate: { lte: $today } }
}
) {
edges {
node {
info {
startDate
endDate
}
}
}
}
我正在使用带有GatsbyJS的ReactJS,有人可以解释一下如何在graphql中插入变量吗?我真的不明白如何传递和创建$ today到此查询。或者,也许可以用某种格式插入今天的日期。
所有日期均为YYYY-MM-DD
在mysql中,我可以直接插入变量/有一个函数CURDATE():(
答案 0 :(得分:1)
您必须在调用API时将变量作为单独的对象传递。来自graphql.org的示例:
var dice = 3;
var sides = 6;
var query = `
query RollDice($dice: Int!, $sides: Int) {
rollDice(numDice: $dice, numSides: $sides)
}`;
fetch('/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
},
body: JSON.stringify({
query,
variables: { dice, sides },
})
}).then(r => r.json())
.then(data => console.log('data returned:', data));