npm 包 @xhubio/table-common 使用教程

当我们需要在前端项目中使用表格时,我们通常会选择开源的表格库,比如 Ant Design 的 Table 或者 Element-UI 的 Table。但是在某些场景下,我们需要自己编写一些表格组件,那么如何能够快速、方便地完成呢?这时候就可以参考 @xhubio/table-common 这个 npm 包了。

什么是 @xhubio/table-common

@xhubio/table-common 是一个基于 React 和 TypeScript 的 npm 包,它提供了一些组件和 hooks,帮助我们快速构建表格,同时也允许我们自定义一些表格的样式和行为。

如何安装

使用 npm 进行安装:

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

如何使用

Table 组件

Table 组件是 @xhubio/table-common 包中最核心的组件之一。它允许我们将数据以表格的形式展示在页面上,并且支持排序、分页、自定义列等功能。

基本使用

在使用 Table 组件之前,我们需要先安装和引入它:

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

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

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

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

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

自定义列

除了基本的表格列之外,@xhubio/table-common 也允许我们自定义列。例如,我们可以通过使用 render 函数来渲染自定义的列:

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

分页

如果我们的数据量较大,可以使用 Table 组件的 pagination 属性来开启分页功能:

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

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

事件

@xhubio/table-common 还支持一些表格的事件,例如:

  • onRowClick:行点击事件。
  • onRowDoubleClick:行双击事件。
  • onRowMouseEnter:鼠标移入行事件。
  • onRowMouseLeave:鼠标移出行事件。
----- ------------------- - -- ---------- -- ------ -- -
  ----- -------- ----------------- - -
    -- ---
  --

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

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

useColumnsEffect hook

@xhubio/table-common 中的 useColumnsEffect hook 可以帮助我们快速实现一些常见的表格列操作,例如选中列、筛选列、隐藏列等操作。

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

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

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

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

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

更多组件和 hooks

除了上述介绍的 Table 组件和 useColumnsEffect hook 之外,@xhubio/table-common 还提供了一些其他的组件和 hooks。例如:

  • TableRowEditable:可编辑行组件。
  • useEditModalEffect:可编辑模态框 hook。
  • useApiPagination:后端分页 hook。

如果您对这些组件和 hooks 感兴趣,可以查看官方文档。

总结

在前端项目中使用表格是一件比较常见的事情,而使用 @xhubio/table-common 可以帮助我们更加方便、快速地完成表格组件的开发。通过本文的介绍,您已经了解了 @xhubio/table-common 的基本用法和一些高级用法,下一步可以尝试在自己的项目中使用它。

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


猜你喜欢

  • npm 包 ng-country-flags 使用教程

    在前端开发中,使用国旗图标是很常见的需求。ng-country-flags 是一个 npm 包,提供了 249 个国家的国旗图标。 本文将详细介绍如何使用该 npm 包,并提供示例代码和使用指导意义以...

    4 年前
  • npm 包 hypertag 使用教程

    什么是 hypertag ? hypertag 是一个简单易用的前端模板引擎,在使用过程中可以使 HTML 标签实现与 JavaScript 变量的绑定,从而达到数据绑定的效果。

    4 年前
  • npm 包 @tpoff/jupyterlab-tpoff_xkcd 使用教程

    如果你是一名前端开发人员,你肯定会使用一些开源的 JavaScript 库来简化你的工作。而 npm 是你不二选择。今天,我们来介绍一个非常实用的 npm 包 @tpoff/jupyterlab-tp...

    4 年前
  • rn-horizontal-switcher:用于 React Native 的水平滑动切换组件的 npm 包

    rn-horizontal-switcher 是一个 React Native 包,它允许您快速而轻松地创建水平滑动切换器,以便在应用程序中展示多个组件或页面。本文将提供一份 rn-horizonta...

    4 年前
  • npm 包 gulp-nwabap-ui5uploader 使用教程

    gulp-nwabap-ui5uploader 是一个可以将 SAP UI5 项目资源上传到 ABAP 服务器的 Gulp 插件。这个插件可以方便的注册到 Gulp 构建任务中,并且可以通过配置连接到...

    4 年前
  • npm 包 diff-object 使用教程

    作为前端开发者,我们经常需要对对象进行比较或者合并,这时候 diff-object 就是一个非常好用的工具。它可以非常方便地对两个对象之间的差异进行比较,让我们能够快速的找到或处理差异。

    4 年前
  • npm 包 rmlines 使用教程

    介绍 在前端开发过程中,有时候在编辑器中插入多余的空行或者注释行,这些空行或者注释行虽然不会影响功能,但是会占用大量的空间,让代码难以阅读。因此,可以使用 npm 包 rmlines 来删除这些空行或...

    4 年前
  • npm 包 typedcomm 使用教程

    简介 在前端开发中,类型定义对于代码的可维护性和可靠性至关重要。而常见的 TypeScript 开发中,编写类型定义常常显得十分繁琐。为了让开发者更加轻松地编写类型定义,npm 社区中出现了很多优秀的...

    4 年前
  • npm 包 jszabbix 使用教程

    前言 在前端开发中,我们经常需要和后端的接口进行交互,获得数据并展现到前端页面上。而在后端服务器监控中,Zabbix 是一个非常优秀的监控系统,可以对服务器的各种状态进行监控记录。

    4 年前
  • npm 包 @clysema/dhcpcd 使用教程

    在前端开发中,我们经常需要使用 npm 包来完成各种任务。今天,我们将介绍一个名为 @clysema/dhcpcd 的 npm 包,它可以帮助我们更轻松地访问 DHCP 服务器和获取 IP 地址等信息...

    4 年前
  • 使用 npm 包 react-native-wheel-view

    简介 react-native-wheel-view 是一个 React Native 原生应用的组件库,它提供了类似于滚动条的选择器功能。使用 react-native-wheel-view 可以方...

    4 年前
  • npm 包 gatsby-source-google-sheet 使用教程

    在前端开发中,有时需要使用 Google Sheet 中存储的数据来展示网页内容,比如制作一个有关排名的网页。而使用 npm 包 gatsby-source-google-sheet 可以轻松地将 G...

    4 年前
  • npm 包 vue-google-drive-picker 使用教程

    前言 随着互联网的快速发展,越来越多的应用需要与云服务进行集成,Google Drive 也是这样一个云服务平台。在前端领域中,我们通常使用一些第三方库来实现与 Google Drive 的集成,其中...

    4 年前
  • npm 包 gatsby-plugin-xillio-docs 使用教程

    简介 gatsby-plugin-xillio-docs 是一个 Gatsby 插件,它可以帮助你将你的代码文档以及 Markdown 文档自动转换成一个漂亮的文档网站,并且可以自动生成导航。

    4 年前
  • npm 包 gulp-rmlines 使用教程

    在前端开发中,我们常常需要使用 gulp 进行自动化构建和工作流管理。而其中一个比较常见的操作就是删除代码中的注释和空行,以减小文件大小和提高代码的可读性。在这种情况下,npm 包 gulp-rmli...

    4 年前
  • npm 包 university-schedule-parser 使用教程

    在前端开发中,有很多场景需要获取学校的教学日程信息,比如学生选课系统、教师调课系统等。本文将介绍 npm 包 university-schedule-parser,以及如何使用它来解析学校教学日程信息...

    4 年前
  • npm 包 react-redux-hash-router 使用教程

    现今的 web 前端往往有着极其复杂的页面结构和交互逻辑。为了更好地管理前端组件、状态、路由等,一个好用、高效的框架是必要的。 本篇文章就要向读者介绍一个如何使用 npm 包 react-redux-...

    4 年前
  • npm 包 grunt-rmlines 使用教程

    一、什么是 grunt-rmlines grunt-rmlines 是一个基于 grunt 的任务插件,可以使用它来删除 JavaScript 或 CSS 代码中的行。

    4 年前
  • npm 包 conservative-normalize-url 使用教程

    在前端开发中,我们经常需要处理 URL 地址,如正确判断 URL 是否合法、规范化 URL 等。不过由于 URL 的复杂性,这些操作非常容易出错。而 npm 中有一个名为 conservative-n...

    4 年前
  • npm 包 airline-logo-scapper 使用教程

    简介 airline-logo-scapper 是一个 Node.js 的包,可以用于获取各大航空公司的 logo。 使用 airline-logo-scapper,我们可以轻松地在前端页面中显示各大...

    4 年前

相关推荐

    暂无文章