接口与联合类型
通过接口和联合类型实现多态查询。 · 难度:入门 · +15XP
接口 (Interface)
接口定义一组共享字段,实现接口的类型必须包含这些字段:
interface SearchResult {
title: String!
}
type Book implements SearchResult {
title: String!
author: String!
}
type Author implements SearchResult {
title: String!
name: String!
}内联片段
查询接口时使用 ... on Type 来访问特定字段:
query {
search(term: "graphql") {
title
... on Book {
author
}
... on Author {
name
}
}
}任务
定义一个接口 Node 包含 id: ID!,让 Book 和 Author 实现它。