NPM 包 @beisen-phoenix/cascader 使用教程

阅读时长 7 分钟读完

在前端开发中,组件化是一个十分重要的概念。而在组件使用的过程中,选择器是其中最为常用的一种组件。@beisen-phoenix/cascader 是一个使用 React 实现的级联选择器组件,其作用是在多级嵌套的数据结构中进行选择,支持动态加载、模糊匹配、多选等功能,非常实用。本文将从安装、导入到使用进行详细说明,帮助您快速地使用该组件。

1. 安装 @beisen-phoenix/cascader

在使用 @beisen-phoenix/cascader 前,需要将其安装到项目中。使用 npm 安装命令:

2. 导入 @beisen-phoenix/cascader

在安装完成后,我们需要将其导入到我们的项目中。如果您的项目是使用 ES6 语法,可以使用以下方式导入:

如果您使用的是 CommonJS 规范,可以使用以下方式导入:

3. 使用 @beisen-phoenix/cascader

在导入组件之后,就可以进行使用了。使用 Cascader 组件需要传递 optionsonChange 两个参数。其中 options 是级联选择器的选项数据,onChange 是当用户选择后出发的回调函数。下面是一个完整的使用示例:

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

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

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

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

上述示例中,我们使用了 useState 来保存用户的选择,当用户进行选择后,触发 onChange 函数将选择的值保存到组件状态中(selectedValue)。而选项(options)数据是使用 optionsData 中的数据传入组件中的。

4. @beisen-phoenix/cascader 的高级功能

为了更好地使用 @beisen-phoenix/cascader,以下是一些它的高级功能:

动态加载

在级联选择器的选项数据量较大,但是又不想一次性全部加载的情况下,可以使用 loadData 属性,通过动态加载降低组件的加载时间。以下是一个动态加载示例:

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

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

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

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

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

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

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

在上述示例中,我们在传递选项数据(optionsData)的同时,使用了 loadData 来异步加载选项的子选项,以此来加快组件的加载速度。

模糊搜索

@beisen-phoenix/cascader 还支持模糊搜索(即在输入框中输入关键字后进行数据筛选)。下面是一个模糊搜索的示例:

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

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

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

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

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

在上述示例中,我们使用了 filterOption 来进行筛选选项数据,以此来实现模糊搜索。

多选

@beisen-phoenix/cascader 还支持多选功能。下面是一个多选的示例:

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

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

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

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

在上述示例中,我们使用了 value 来保存多选的值,而 changeOnSelectallowClearshowSearch 属性则是对多选功能的支持。

总结

@beisen-phoenix/cascader 是一个实用性很强的组件,它可以有效地提高程序员的工作效率。在使用本文中所述的方法进行使用之前,您需要学习 React 与 ES6 基础知识。希望本文能够对您有帮助,如有不当之处,敬请指出。

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