1. what?
①. Schema是用于定义数据结构的.
a. 如:User对象中有哪些属性、对象与对象之间是什么关系等.
2. Schema定义结构:
// 定义查询
schema {
query: UserQuery
}
// 定义查询的类型
type UserQuery {
// 指定对象以及参数类型
user(id: ID) : User
}
// 定义对象
type User {
// !表示该属性是非空项
id: ID!
name: String
age: Int
}
3. 标量类型(Scalar Types):
①. GraphQL规范中,默认定义了5种类型:
a. Int: 有符号32位整数
b. Float: 有符号双精度浮点值
c. String: UTF-8字符序列
d. Boolean: true、false
e. ID: ID标量类型表示一个唯一标识符,通常用以重新获取对象或者作为缓存中的键
②. 自定义类型:
a. 在graphql-java实现中增加了: Long、Byte等.
4. 枚举类型:
①. 枚举类型是一种特殊的标量,它限制在一个特殊的可选值集合内.
②. 举例:
// 定义枚举
enum Episode {
NEWHOPE
EMPIRE
JEDI
}
type Human {
id: ID!
name: String!
// 使用枚举类型
appearsIn: [Episode]!
homePlanet: String
}
5. 接口(interface):
①. 一个接口是一个抽象类型,包含某些字段,而对象类型必须包含这些字段,才能算实现了这个接口.
②. 举例:
// 定义接口
interface Character {
id: ID!
name: String
}
// 实现接口
type Human implements Character {
id: ID!
name: String
tota服务器托管网l: Int // 扩服务器托管网冲
}
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: [vue]在鼠标点击处,画点,并弹窗显示两个点的距离
{{ calculateDistance() }} export default { data() { return { markPoints: [], // 存储标记点坐标的数组 isDistanceVisible: false, // 是否显示距离弹窗 c…