跳至主要内容
版本:v18.0.0

定义字段

在客户端类型上定义字段就像定义一个解析器函数一样简单,该函数接受您的模型类型的实例作为其第一个参数,并返回字段值。请注意,导出的函数名称必须与字段名称匹配。

语法

Relay 解析器通过解析器函数上面的 docblocks 标记。@RelayResolver 是标记任何 Relay 解析器定义开始的标签。要在 GraphQL 模型类型 TypeName 上定义一个字段

添加 TypeName 后面加点,然后使用 GraphQL 的模式定义语言定义字段:https://spec.graphql.net.cn/June2018/#FieldDefinition

/**
* @RelayResolver TypeName.fieldName(arg1: ArgTypeName): FieldTypeName
*/

一个简单的字段可能看起来像这样

/**
* @RelayResolver User.name: String
*/
export function name(user: UserModel): string {
return user.name;
}
注意

Relay 会在任何输入(在本例中为模型实例)发生变化时有效地重新计算解析器,因此您无需担心记忆解析器函数。

这只是一个简单的解析器,它从模型类型中读取并返回标量值。要了解解析器字段支持的功能的完整菜单,请参阅