Мой сервер Apollo имеет следующее определение.
input MinMax{
min:Float
max:Float
}
input ScreenerInput{
fy:Int!
quarter:Int!
ltp:MinMax
eps:MinMax
pe:MinMax
netWorth:MinMax
paidUp:MinMax
reserve:MinMax
netProfit:MinMax
}
Как определить тип MinMax
в клиенте Apollo для отправки переменных для типа MinMax
. До сих пор я делал только скалярные типы, поэтому мой запрос был простым.
Мой тип запроса: screeenedCompanies(criteria:ScreenerInput!):[ScreenedCompanies]
, если я выполняю запрос, как показано ниже, он работает.
{
screeenedCompanies(criteria:{
fy:2075
quarter:2
eps:{
min:30
max:40
}
}){
sector
symbol
}
}
Я хочу, чтобы запрос выполнялся таким образом, чтобы переменные могли быть изменено
query getScreenedCompanies($criteria:<What type should be here ?>){
{
screeenedCompanies(criteria:$criteria){
sector
symbol
}
}
}
После указания типа ScreenerInput
мой запрос выглядит следующим образом
query getScreenedCompanies($criteria:ScreenerInput!){
screeenedCompanies(criteria:$criteria){
sector
symbol
}
}
мои переменные в apolloplayground выглядят так, как показано ниже
{
"criteria": {
"fy": 2075
"quarter": 4
"ltp": {
"min": 345
"max": 400
}
}
}
Я получаю следующая ошибка
"error": {
"errors": [
{
"message": "Variable \"$criteria\" of required type \"ScreenerInput!\" was not provided."