npm 包 Cassie 使用教程

阅读时长 9 分钟读完

介绍

Cassie 是一个基于 Vue.js 的自适应表单生成器库,可以自动根据表单字段渲染出对应的表单组件,支持表单验证、布局以及多语言等功能。可以方便易用地创建各种表单。

本文将详细介绍 Cassie 的使用方法及其特点,并提供一些示例代码供实践参考。

安装

在使用 Cassie 之前,需要通过 npm 进行安装:

快速开始

使用 Cassie 很简单,仅需要在 Vue 的 template 中配置数据即可。以下是一个最简单的使用示例:

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

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

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

通过上面的配置,将会渲染出一个输入框,显示为“名称”这一标签。

配置项

Cassie 提供了丰富多样的配置项,可以支持多样的表单类型、验证规则以及布局等。

以下是一份完整的配置项示例:

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

上述示例中,type 表示表单类型,label 表示表单标题,field 表示表单字段名,placeholder 表示输入框的提示文本。需要注意的是,这些都是必选项。rules 属性表示验证规则,props 属性表示对应组件的属性配置,events 属性表示对应组件的事件配置。这些属性均是可选项。

表单类型

Cassie 支持多种表单类型,包括输入框、下拉框、单选框、多选框、日期选择器等。这里仅简单介绍其中的几种类型。

输入框

使用 type: 'input' 定义一个输入框类型,可以设置的属性包括:

  • label:输入框标题
  • field:输入框对应的字段名
  • placeholder:输入框提示文本
  • rules:验证规则,可以设置是否必填、最小最大长度等
  • props:设置组件的属性,如前缀/后缀图标、输入类型等
  • events:设置组件的事件,如 focusblur

以下是一个使用示例:

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

下拉框

使用 type: 'select' 定义一个下拉框类型,可以设置的属性包括:

  • label:下拉框标题
  • field:下拉框对应的字段名
  • placeholder:下拉框提示文本
  • rules:验证规则,可以设置是否必填
  • options:下拉框选项,包括选项名称及值
  • props:设置组件的属性,如远程搜索、可清空等
  • events:设置组件的事件,如 change

以下是一个使用示例:

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

日期选择器

使用 type: 'date' 定义一个日期选择器类型,可以设置的属性包括:

  • label:日期选择器标题
  • field:日期选择器对应的字段名
  • placeholder:日期选择器提示文本
  • rules:验证规则,可以设置是否必填
  • props:设置组件的属性,如日期格式、范围选择等
  • events:设置组件的事件,如 change

以下是一个使用示例:

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

表单验证

Cassie 支持表单验证,可以对表单项输入的内容进行验证,防止输入错误或数据不完整等情况出现。

只需要在表单配置项中设置 rules 属性,即可开启验证功能。例如:

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

上述示例中,定义了一个输入框,要求输入的内容不能为空且长度在 2-10 个字符之间。

表单布局

Cassie 支持多种表单布局,可以根据具体需求进行配置。目前支持的布局包括水平布局、垂直布局及 inline 布局。

以下是一个使用示例:

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

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

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

上述示例中,使用了水平布局,即将表单项排列在同一行内呈现。

多语言

Cassie 支持多语言,可以轻松实现国际化。只需要在 Cassie 组件中设置 messages 属性,即可实现多语言支持。

以下是一个使用示例:

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

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

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

上述示例中,定义了一份多语言信息,包括中英文两种语言,且分别定义了名称输入框的提示文本。

结语

本文简单介绍了 Cassie 的使用方法,并提供了一些使用示例供参考。Cassie 具备自适应表单生成、表单验证、多语言、多种布局等多种功能,可以为前端开发者提供快速高效的表单开发支持。

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

纠错
反馈