npm 包 refova 使用教程

介绍

refova 是一个基于 React 的表单验证库,它支持常用的表单验证规则,并且易于扩展自定义规则。本文将介绍 refova 的使用方法。

安装

使用 npm 安装 refova:

--- ------- ------ ------

使用方法

在 React 组件中使用 refova:

------ ----- ---- --------
------ - ------- - ---- ---------

-------- ------------- -
  ----- - ------ ------------- ------------- ---------- - - ---------
    -------------- -
      --------- ---
      --------- ---
      ---------------- ---
      ------ ---
    --
    ----------------- -
      --------- -
        --------- -----
        ---------- --
      --
      --------- -
        --------- -----
        ---------- --
      --
      ---------------- -
        --------- -----
        -------- -----------
      --
      ------ -
        --------- -----
        ------ -----
      --
    --
    ---------------- -
      --------------------
    --
  ---

  ------ -
    ----- ------------------------
      ------
        -----------
        ---------------
        -----------------------------
        -----------------------
        -------------------
      --
      ---------------------- -- -----------------------------------
      ------
        ---------------
        ---------------
        -----------------------------
        -----------------------
        -------------------
      --
      ---------------------- -- -----------------------------------
      ------
        ---------------
        ----------------------
        ------------------------------------
        -----------------------
        -------------------
      --
      ----------------------------- -- ------------------------------------------
      ------
        ------------
        ------------
        --------------------------
        -----------------------
        -------------------
      --
      ------------------- -- --------------------------------
      ------- -----------------------------
    -------
  --
-

API

useForm(config)

useForm 是一个 React Hook,用于创建表单管理器,接受一个参数:

config

  • initialValues: Object - 表单初始值,默认为 {}
  • validationSchema: Object - 表单验证规则,详见下一节。
  • onSubmit: Function - 提交时触发的回调函数。

useForm 返回一个包含以下成员的对象:

  • state: Object - 当前表单状态,包含以下属性:
    • values: Object - 当前表单值。
    • errors: Object - 当前表单错误,属性名为表单项名,属性值为错误信息,如果属性不存在表示该表单项没有错误。
    • touched: Object - 当前表单项是否被访问过,属性名为表单项名,属性值为布尔值。
    • submitting: Boolean - 当前是否正在提交表单。
  • handleChange: Function - 表单项值变化的回调函数。
  • handleSubmit: Function - 表单提交的回调函数。
  • handleBlur: Function - 表单项失去焦点的回调函数。

验证规则

refova 支持以下验证规则:

  • required - 必填。
  • minLength(n: number) - 最小长度为 n
  • maxLength(n: number) - 最大长度为 n
  • email - 邮箱格式。
  • matches(key: string) - 与另一个表单项的值相同。

结语

refova 是一个轻量级的表单验证库,它足够简单易用,但又能够满足常用的表单验证需求。如果你正在寻找一款表单验证库,不妨试试 refova。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60055fd581e8991b448dd60d


猜你喜欢

  • npm 包 generator-milk 使用教程

    generator-milk 是一个可以帮助前端工程师快速搭建基于 Yeoman 的项目脚手架的 npm 包。在开始使用之前,先简单介绍一下 Yeoman。 Yeoman 是一款著名的前端工具链,它可...

    3 年前
  • npm 包 smartzhe 使用教程

    简介 smartzhe 是一个前端开发中非常实用的工具,它是一个简单易用的语法糖库,能够大大简化前端代码的编写,提高开发效率。 安装 通过 npm 安装 smartzhe: npm install s...

    3 年前
  • npm 包 genonamestr-pmb 使用教程

    npm 是前端开发中必不可少的包管理工具,它可以帮助我们快速的安装和管理各种开发工具。其中一个非常实用的 npm 包就是 genonamestr-pmb。它提供了一种生成随机字符串的方式,可以配合前端...

    3 年前
  • npm 包 milkui-template 使用教程

    简介 milkui-template 是一个基于 React 和 Sass 的 UI 组件库,提供了一系列常用的 UI 组件(如按钮、文本框、表格等),具有灵活性和可定制性强的特点。

    3 年前
  • npm 包 Milk-Dev 使用教程

    Milk-Dev 是一个用于开发 Web 前端项目的 npm 包,它包含了一系列常用的工具和项目模板,可以帮助开发者更快速、高效地开发 Web 前端应用。本文将介绍如何使用 Milk-Dev 进行 W...

    3 年前
  • npm 包 censorify-peng 使用教程

    什么是 censorify-peng censorify-peng 是一个 Node.js 模块,它可以用来过滤字符串中的敏感词汇。这个模块使用了黑名单算法对字符串中的敏感词汇进行过滤。

    3 年前
  • npm 包 stream-tail 使用教程

    在前端开发中,我们经常需要读取大文件或者实时输出日志等场景,这时候就需要处理流(Stream)了。Stream是一个面向对象的抽象概念,通常用来处理数据序列,提供了流式读写数据的接口。

    3 年前
  • 介绍 @zladuric/ngx-infinite-scroll

    @zladuric/ngx-infinite-scroll 是一个 Angular 的无限滚动包,它允许您在滚动时加载页面内容。这对于需要加载大量数据的 Web 应用程序特别有用。

    3 年前
  • npm 包 react-native-vxgplayer 使用教程

    React Native 是一种用于构建跨平台应用程序的 JavaScript 框架,它可以帮助开发者在 iOS 和 Android 平台上创建本地 UI。在 React Native 中,vxgpl...

    3 年前
  • npm 包 base16-builder-typescript 使用教程

    简介 base16-builder-typescript 是基于 Base16 色彩规范的一个 TypeScript 库,可以方便地构建自定义的代码高亮主题。 安装 在您的 TypeScript 项目...

    3 年前
  • npm 包 css-to-js-loader 使用教程

    将 CSS 样式转成 JavaScript 对象是前端开发中频繁需要做的事情。css-to-js-loader 是一个 Webpack 的加载器,在开发中可以将 CSS 样式转换成 JavaScrip...

    3 年前
  • npm包 http-errors-middleware 使用教程

    前言 在前端开发中,我们经常会使用一些中间件来帮助我们更好地管理和处理项目。而http-errors-middleware就是其中一个非常实用的中间件。它可以让我们更好地处理HTTP错误,让我们的项目...

    3 年前
  • npm 包 receiptpdf 使用教程

    使用 npm 包 receiptpdf,我们可以轻松地生成符合标准的收据 PDF 文件,其中包含一些基本的功能,如行和列的定义、标题和页脚。这个 npm 包适用于前端开发人员,方便他们在自己的项目中使...

    3 年前
  • npm 包 wifi-security 使用教程

    在现代社会中,无线网络无处不在,每个人都有可能连接到无线网络。然而,使用 WiFi 的同时也存在着安全问题,比如黑客可以通过破解 Wi-Fi 加密密码来获取敏感信息。

    3 年前
  • npm 包 delayed-call 使用教程

    delayed-call 是一个常用的 JavaScript 库,它为我们提供了一种非常方便的方式来延迟某个函数的调用,这种方式可以在多个场景中大显身手。在本文中,我们将介绍 delayed-call...

    3 年前
  • npm 包 nativescript-crypto 使用教程

    概述 nativescript-crypto 是一款基于 JavaScript 的 npm 包,提供了加密解密、散列处理等常见密码学操作。本文将详细介绍如何使用该包进行加密和解密相关操作。

    3 年前
  • npm 包 @aviteng/json-admin 使用教程

    前言 @aviteng/json-admin 是一款基于 Node.js 平台的 npm 包,用于通过终端快速创建、编辑和管理 JSON 数据。本文将详细介绍该 npm 包的使用方法,包括安装和基本用...

    3 年前
  • npm 包 gb-logger 使用教程

    简介 gb-logger 是一个轻量级的 npm 包,它提供了一套简单易用的日志记录接口,适用于在浏览器和 Node.js 环境中使用。gb-logger 支持将日志输出到控制台和文件中。

    3 年前
  • npm 包 react-first-child 使用教程

    在 React 中,我们常常需要找到组件的第一个子元素并对其进行一些操作,而 npm 包 react-first-child 就能够帮助我们实现这一功能。本文将详细介绍如何使用这个 npm 包并提供示...

    3 年前
  • npm 包 graphix 使用教程

    简介 graphix 是一个基于 SVG 技术的图形库,它可以用于在浏览器中创建丰富的、可交互的图形。 graphix 的主要特点包括: 支持多种形状,包括矩形、圆形、椭圆、多边形等; 支持颜色、透...

    3 年前

相关推荐

    暂无文章