SuperAPI AI 工具集

yup

编程与开发

查看项目

更新于 10-16 00:29

技能介绍

用途:Yup 是 JavaScript 与 TypeScript 的 schema 校验库,用链式、流畅的 API 定义数据结构并校验数据,典型场景是表单校验(如配合 React Hook Form、Formik),也可用于接口数据校验与类型推断。

主要能力:支持 string、number、boolean、date、array、tuple、object、mixed 等 schema 类型,可链式调用 required、min、max、matches、email、url、uuid、integer、positive、oneOf、notOneOf、default 等方法;对象可用 noUnknown 拒绝未知键、strict 禁止类型转换;数组可用 of 指定元素 schema,支持 tuple 式定义。支持 when() 条件校验、test() 自定义校验(含异步)、addMethod() 注册可复用校验方法;可通过 InferType 从 schema 推断 TypeScript 类型,用 cast()、transform() 做值转换。校验方法包括 validate()、validateSync()、isValid(),可配置 abortEarly、stripUnknown、strict、context 等选项。

使用方式:安装 npm install yup;以 import * as yup from 'yup' 引入,定义 schema 后调用 validate/isValid。配合 React Hook Form 时使用 @hookform/resolvers/yup 的 yupResolver,配合 Formik 时通过 validationSchema 传入。校验失败抛出 ValidationError,可读取 errors 与 inner。

限制:资料未提供价格、平台支持范围、性能指标等信息;完整方法参考见 references/methods.md。