用途:Valibot 是模块化、类型安全的 schema 校验库,用于校验结构化数据。本技能适用于用户询问 Valibot 校验、创建或修改 schema、解析校验输入、提及 Valibot/schema/validation,或从 Zod 迁移的场景。
主要能力:核心概念分为 schema(定义期望类型,如 v.string()、v.object())、method(使用或修改 schema,schema 作为第一个参数,如 v.parse、v.safeParse、v.is)和 action(在 pipe 中校验或转换数据)。管道 v.pipe() 以 schema 开头后接 action,支持字符串、数字、数组等校验,v.check 自定义校验,v.trim/v.toLowerCase 等值转换,v.toNumber/v.toDate 等类型转换,v.transform 自定义转换。对象支持 object、looseObject、strictObject、objectWithRest,以及 pick、omit、partial、required 等操作;支持 optional、nullable、nullish 及默认值。还支持数组、元组、union、picklist、variant、递归 schema、异步校验(pipeAsync/parseAsync)、fallback 回退值、错误扁平化 v.flatten,以及通过 @valibot/to-json-schema 转换 JSON Schema。类型推断使用 v.InferOutput、v.InferInput、v.InferIssue。
使用方式:安装命令 npm install valibot(或 yarn add valibot、pnpm add valibot、bun add valibot),推荐 import * as v from "valibot"。解析用 v.parse(schema, data)(出错抛异常)或 v.safeParse(schema, data)(返回结果对象),类型守卫用 v.is。
限制与注意:Valibot 与 Zod API 不同,不可混用;action 必须放在 pipe 内;异步校验必须使用 parseAsync。资料未提供收费、价格、平台或效果信息。