Как использовать одну двойную кавычку в запросе фильтров GraphQL Apollo?

#reactjs #graphql #graphql-js

Вопрос:

Я использую React с GraphQL Apollo.

Но я не могу отправить значение только с одной двойной кавычкой.

Когда я использую value:["""] или value:["""] , я получаю ошибку GraphQLError: Синтаксическая ошибка: неактивированная строка

Я не могу использовать одинарные кавычки value:['"'] «Синтаксическая ошибка запроса GraphQL (1:22) Неожиданный символ одинарной кавычки (‘), вы имели в виду использовать двойную кавычку («)?

Можно использовать одну двойную кавычку с текстом """"text""" . Без текста """"""" — у меня ошибка.

В GraphiQL это работает идеально value: [""hello"] .

С переменными я могу использовать двойные кавычки, но такой подход делает все слишком сложным.

Возможно ли это сделать?

Пример моей просьбы:

 {  items_all(  page_request:   {   filter_request: {property: "full_name", value: ["text"], operator: LIKE})   {  content {  id  }  } }  

Ценю любую помощь!

Комментарии:

1. просто используйте переменные, это правильный способ для всех элементов динамического запроса …. «слишком сложно»? хорошая шутка … «работает в graphiql» — проверьте запрос на вкладке «Сеть» для получения подробной информации, работает ли он без текста?

2. Вы можете поделиться кодом, который находится вокруг этого запроса? Я предполагаю, что ты просто избегаешь неправильных вещей. Я не знаю, почему вы пытаетесь «просто добавить больше цитат». Ответ обычно заключается в «добавлении большего количества обратных косых черт». Тем не менее, приведенный выше комментарий верен. Для этого вы должны использовать переменные. Это правильный путь, и это очень просто сделать.

3. Спасибо! Похоже, мне придется использовать переменные. «Слишком сложно», потому что запросы формируются как строки и после этого вставляются в запросы. Мне нужно переписать много кода, чтобы использовать переменные.

4. Неправильный выбор … Кто тебе это сказал? Фильтры обычно представляют собой объекты в форме дерева … не используйте snake_case, используйте camelCase , это стандарт GraphQL

5. @xadm, это было до меня 🙂 Не могли бы вы, пожалуйста, опубликовать свой ответ? Я думаю, что разработчики должны знать, что вам нужно использовать переменные.