GraphQL фильтрация по данным - PullRequest
1 голос
/ 25 сентября 2019

У меня следующий запрос:

query MyQuery($today: Date) {
        allMovies(
            filter: {
              info: { endDate: { gte: $today }, startDate: { lte: $today } }
            }
          ) {
        edges {
          node {
            info {
             startDate
             endDate
            }
          }
        }
}

Я использую ReactJS с GatsbyJS, может кто-нибудь объяснить мне, как вставить переменную в graphql?Я не очень понимаю, как передать и создать $ сегодня для этого запроса.Или, возможно, как-то можно вставить сегодняшнюю дату в правильном формате.

Все даты указаны в ГГГГ-ММ-ДД

В mysql я мог вставить переменную напрямую / появилась функция CURDATE (): (

1 Ответ

1 голос
/ 25 сентября 2019

Вы должны передать переменные как отдельный объект при вызове 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));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...