웹 응용 프로그램에서 graphql
에 액세스하려면 react-apollo
을 사용하고 있습니다.반응성 아폴로의 선택적 필터 매개 변수 모델링
나는 나 게임의 일정을 필터링 할 수 있습니다 다음과 같습니다 쿼리가 있습니다
query($pagination:Int!, $divisionId:ID, $teamId:ID, $startDate:DateTime!, $endDate:DateTime!
){
games: allGames (
orderBy: date_ASC,
first: $pagination,
filter: {
date_gte: $startDate,
date_lte: $endDate,
division: {id: $divisionId},
OR: [
{homeTeam: {id: $teamId} },
{awayTeam: {id: $teamId} },
]
}
){
id
.... more fields
}
startDate
및 endDate
변수가 모든 요청에 대해 필요를하지만, teamId
및 divisionId
는 없습니다. 초기 요청에 teamIds
및 divisionIds
을 모두 표시하고 필요에 따라 필터/드릴 다운을 사용할 수있게하려고합니다.
내가 와일드 카드 (*
) 또는 그 종류의 것을 추가 할 수 있는지보고 싶었지만 가능한지 확실하지 않았습니다. graphql 변이를 사용하면 변수에 대한 null
값을 사용하여 여러 사용 사례 (부분 업데이트 & 생성)에 적용 할 수있는 단일 변이를 작성할 수 있지만 비슷한 기능을 달성하는 방법을 찾을 수는 없습니다.
divisionId
&
teamId
에 대한 필터 각각의 시나리오 (하나
divisionId
및
teamId
모두 단지
teamId
하나, 그리고 하나 하나를 다른 쿼리를 호출해야하나요 나 (마지막 문장은 프로세스가 DRY /지면서 너무 복잡하지 보일 수 있기 때문에). 적은 오버 헤드
를이를 또는 내가 division_in
및 id_in
에 division
및 id
을 전환 할 수와 함께 (약간 큰) 배열을 전달할 모든 divisionIds
및에 가능한 값 초기 소품으로?