graphql/validation
模块实现了 GraphQL 结果的验证阶段。您可以从 graphql/validation
模块或根 graphql
模块导入。例如
import { validate } from "graphql/validation" // ES6var { validate } = require("graphql/validation") // CommonJS
function validate( schema: GraphQLSchema, ast: Document, rules?: Array<any>): Array<GraphQLError>
实现规范中的“验证”部分。
验证同步运行,返回遇到的错误数组,或者如果未遇到错误并且文档有效则返回空数组。
可以提供特定验证规则列表。如果未提供,将使用 GraphQL 规范定义的默认规则列表。
每个验证规则都是一个返回访问者的函数(参见 language/visitor API)。访问者方法应返回 GraphQLErrors,或者在无效时返回 GraphQLErrors 数组。
访问者还可以提供 visitSpreadFragments: true
,这将改变访问者的行为,跳过顶层定义的片段,而是在遇到扩展时访问这些片段。
var specifiedRules: Array<(context: ValidationContext): any>
此集合包含 GraphQL 规范定义的所有验证规则