[nodejs] GraphQL 쿼리 언어 명명된 프래그먼트 정의
GraphQL은 API를 쿼리하고 뮤테이션하는 데 사용되는 강력한 쿼리 언어입니다. 쿼리를 작성할 때 반복되는 부분을 재사용하기 위해 명명된 프래그먼트(named fragment)를 정의할 수 있습니다.
명명된 프래그먼트란?
명명된 프래그먼트는 쿼리 내에서 재사용 가능한 필드 집합을 정의하는 기능입니다. 이는 중복 코드를 줄이고 쿼리의 가독성을 높이는 데 도움이 됩니다. 예를 들어, 여러 쿼리에서 동일한 필드 집합을 사용해야 하는 경우, 명명된 프래그먼트를 활용하여 해당 필드 집합을 정의하고 재사용할 수 있습니다.
명명된 프래그먼트의 정의
명명된 프래그먼트는 다음과 같이 정의할 수 있습니다.
fragment <FragmentName> on <TypeName> {
field1
field2
...
}
여기서:
<FragmentName>
은 정의할 프래그먼트의 이름입니다.<TypeName>
은 해당 프래그먼트를 사용할 객체의 타입 이름입니다.field1
,field2
등은 해당 타입의 필드들입니다.
예를 들어, 사용자 객체의 필드를 재사용할 명명된 프래그먼트를 정의하는 예제는 다음과 같습니다.
fragment UserInfo on User {
id
name
email
}
이제 UserInfo
프래그먼트를 다른 쿼리에서 사용하여 중복되는 필드를 효율적으로 재사용할 수 있습니다.
명명된 프래그먼트를 사용하면 쿼리의 가독성을 높이고 중복을 줄일 수 있으므로, GraphQL 쿼리를 작성할 때 유용한 기능 중 하나입니다.
참고 문헌: