关于 regle
Regle 是面向 Vue 3 和 TypeScript 表单的类型安全、基于模型的验证库,提供响应式验证与无头 API,可配合不同 UI 框架和设计系统使用。
主要功能
- 01TypeScript 类型推断验证
- 02响应式值与错误状态
- 03内置规则和自定义规则
- 04集成 Zod、Valibot 和 ArkType 模式
- 05验证修饰项与分组
适用场景
- 01验证 Vue 表单的响应式状态
- 02显示字段错误和修改状态
- 03应用异步或条件规则
- 04接入基于模式的验证
MCP 相关
Regle 提供 MCP 服务,用于查询文档和自动补全。MCP 客户端可通过 `npx @regle/mcp-server` 启动该服务。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ onmax/ nuxt-skills --skill regle安装后在 Claude Code 中输入/regle确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/core-displaying-errors.mdcore-modifiers.mdcore-use-regle.mdcore-validation-properties.md详细介绍
Regle
Regle 是一个面向 Vue 3 的类型安全、基于模型且无头的表单验证库。它提供完整的 TypeScript 类型推断和响应式验证,并可与任何 UI 框架或设计系统配合使用。
MCP 服务
Regle 提供 MCP 服务,可用于获取 Regle 文档和自动补全。若该服务可用,请使用它获取最新的 API 信息。
{
"mcpServers": {
"regle": {
"command": "npx",
"args": ["@regle/mcp-server"]
}
}
}
## Installation
```sh
# Core + built-in rules
pnpm add @regle/core @regle/rules
# Optional: schema support (Zod, Valibot, ArkType)
pnpm add @regle/schemas
需要 Vue 3.3+ 和 TypeScript 5.1+。
快速开始
import { useRegle } from '@regle/core';
import { required, email, minLength } from '@regle/rules';
const { r$ } = useRegle(
{ name: '', email: '' },
{
name: { required, minLength: minLength(3) },
email: { required, email },
}
);
<template>
<input v-model="r$.$value.name" placeholder="Name" />
<ul v-if="r$.$errors.name.length">
<li v-for="error of r$.$errors.name" :key="error">{{ error }}</li>
</ul>
<button @click="r$.$validate()">Submit</button>
</template>
核心概念
- State:第一个参数——原始对象、
reactive、ref或单个值 - Rules:第二个参数——镜像数据结构,每个字段都有一个规则对象
r$:返回的响应式对象,包含值、错误、脏状态和验证方法- 默认情况下,所有规则都是可选的;添加
required可将字段设为必填
核心功能
| 主题 | 描述 | 参考 |
|---|---|---|
| useRegle | State 定义、规则声明、动态规则、r$ 对象 | core-use-regle |
| 验证属性 | $invalid、$dirty、$error、$errors、$pending、$validate、$touch、$reset | core-validation-properties |
| 显示错误 | 显示错误、自定义消息、getErrors、flatErrors | core-displaying-errors |
| 修饰符 | autoDirty、lazy、silent、rewardEarly、disabled、validationGroups、字段级修饰符 | core-modifiers |
相关技能
- regle-rules — 内置规则、自定义规则(
createRule)、规则包装器(withMessage、withParams、withAsync)以及规则运算符(and、or、applyIf、assignIf)。 - regle-advanced — 集合、异步、服务端错误、重置、作用域验证、变体、全局配置。
- regle-schemas — Zod、Valibot、ArkType 和 Standard Schema 集成。
- regle-typescript — 类型安全的输出、规则 schema 和组件 props 的类型定义。
评论
支持 Markdown