npm 包 @zijin/form 使用教程

阅读时长 12 分钟读完

介绍

@zijin/form 是一个轻量级的前端表单组件库,它提供了一系列可重复利用的表单组件和相关的表单验证功能,以快速、便捷地开发前端表单为目的。

功能特性

  • 支持常见的表单控件,如输入框、下拉框、单选框、多选框等。
  • 支持表单验证,包括必填、长度、格式、逻辑检验等。
  • 支持表单数据填充和获取,以及数据校验和提交。
  • 提供了一些实用工具函数,如格式化日期、数字千位分隔等。

安装

使用 npm 安装:

使用

表单结构

@zijin/form 的表单结构分为 FormItem (表单项)和 Form (表单)两个组件,FormItem 包含了具体的表单控件,如 InputSelectCheckbox 等,而 Form 则包含了一组 FormItem 以构建完整的表单。

下面是一个简单的表单例子:

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

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

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

在这个例子中,我们首先引入了 @zijin/form 组件库所提供的相关组件,然后在模板中使用 FormFormItem 构建了一个包含四个表单项的表单,并使用相应的验证规则对其进行验证。最后,我们使用 Button 元素绑定了表单提交事件,使用 this.$refs.form.validate() 方法对表单进行验证并执行提交操作。

表单控件

@zijin/form 提供了一系列与表单相关的控件,下面是这些控件的介绍及使用方法。

Input

Input 是一个基于 input 元素的文本输入框控件,支持 v-model 双向绑定、输入限制等功能。

主要属性:

属性名 类型 默认值 描述
value、v-model string 绑定输入框的值
type string text 输入框类型,可选值:text、number、password 等
placeholder string 输入框占位符
maxLength number 最大输入长度
minLength number 最小输入长度
disabled boolean false 是否禁用输入框
readonly boolean false 是否只读

Select

Select 是一个下拉框控件,支持单选和多选两种模式,同时支持搜索和远程数据加载等高级功能。

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

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

主要属性:

属性名 类型 默认值 描述
value、v-model string / array 绑定下拉框的值,当 multiple 为 true 时,绑定值为数组
options array 下拉框的选项,每个选项包含 valuelabel 两个属性
disabled boolean false 是否禁用下拉框
multiple boolean false 是否允许多选
clearable boolean false 是否允许清空选项
filterable boolean false 是否允许搜索选项
remote boolean / function false 是否需要远程数据加载,可以传入一个函数进行自定义数据加载

Checkbox

Checkbox 是一个复选框控件,支持单选和多选两种模式。

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

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

主要属性:

属性名 类型 默认值 描述
value、v-model string / array 绑定复选框的值,当 CheckboxGroupv-model 绑定的是数组时,绑定值为数组
label string / number / boolean 复选框的值
disabled boolean false 是否禁用复选框

Radio

Radio 是一个单选框控件。

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

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

主要属性:

属性名 类型 默认值 描述
value、v-model string / number / boolean 绑定单选框的值
label string / number / boolean 单选框的值
disabled boolean false 是否禁用单选框

表单验证

@zijin/form 提供了一套简单但实用的表单验证机制,可以满足大部分常用场景的需求。验证规则使用数组形式定义在 Formrules 属性中,数组中每个元素为一个对象,可以定义多个验证条件,如果有一个验证条件不满足,则该表单项验证失败。

规则列表

下面是 @zijin/form 支持的验证规则:

规则名 参数 描述
required - 判断字段是否必填
pattern RegExp 判断字段值是否符合指定的正则表达式
min number 判断字段值是否大于或等于指定值
max number 判断字段值是否小于或等于指定值
len number 判断字段值的长度是否等于指定值
equals string 判断字段值是否与指定值相等
type string 判断字段值的类型是否符合指定值,可选值: number、array 等

示例代码

下面是一个使用 @zijin/form 进行表单验证的例子:

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

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

总结

@zijin/form 是一个实用的前端表单组件库,它提供了丰富的表单控件和验证功能,可以帮助我们快速开发前端表单。

在使用 @zijin/form 进行表单开发时,我们首先需要了解其组件结构,并对表单控件和验证规则有一定的掌握。此外,我们还需要注意一些细节问题,如表单数据绑定、表单验证等,以保障表单的正确性和可用性。

通过本文的介绍,相信读者已经对 @zijin/form 组件库有了一定的了解,并可以从中获得一些实用的前端开发技巧和经验。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671d730d0927023822dd4

纠错
反馈