[graphQL] query구현2

seokki kwon·2022년 8월 30일
0

graphQL

목록 보기
4/7

특정 데이터만 가져오기

순서를 기억하자
type지정
반환형식지정
resolver작성

 type Query {
    teams: [Team]
    equipment: [Equipment]
    supplice: [Supplice]
    team(id: Int) : Team
  }

team 은 id를 정수로 받아서 단일객체를 반환

Query: {
    //...
    team: (parent, args, context, info) => database.teams
        .filter((team) => {
            return team.id === args.id
        })[0],
}

args 는 파라미터 값을 받아옴
map 반복문으로 파리미터로 받은 id값의 객체를 반환

이중쿼리

한번에 쿼리에 여러계층의 데이터를 가져오기

team이 가지고있는 supplice를 가져오기

Query: {
    // ...
    teams: () => database.teams
    .map((team) => {
        team.supplies = database.supplies
        .filter((supply) => {
            return supply.team === team.id
        })
        return team
    }),
}

teams 라는 resolver 는
teams 를 map 으로 배열을 돌린다
team.suplies 라는 항목에 해당 team의 id에 과 일치하는 supplies 객체를 넣어준다.

profile
웹 & 앱개발 기록

0개의 댓글