React中使用表格:第一部分

用于呈现数据的最常见的用户界面元素之一是表格。事实证明,使用表格时需要控制很多方面,例如:

定义列和标题各种单元格格式(文本、数字、复选框)调整大小过滤动态成长样式

在这个由两部分组成的系列中,您将了解使用 React Bootstrap Table 组件在 React 中处理表格数据的细节。您将能够轻松创建复杂且具有专业外观的表格,并且能够自定义各个方面。

开始使用

 

首先,您应该熟悉 React 本身。如果您需要 React 入门知识,Envato Tuts+ 有一个很棒的系列可以帮助您开始使用 React。在本教程中,我们将重点关注 React Bootstrap Table2 的使用。

首先,使用 create-react-app 命令创建一个 React 应用。您可以在 React 初学者速成课程中了解如何设置 create-react-app

create-react-app react-table-app

现在导航到项目文件夹并安装 React Bootstrap Table 2 和 Bootstrap。

cd react-table-appnpm install react-bootstrap-table-next --savenpm install --save bootstrap@4.0.0

创建基本表

我们将从一个基本表格开始。我们首先导入 BootstrapTable 组件和 CSS,如下所示。

import logo from './logo.svg';import './App.css';import React, { Component } from 'react';import '../node_modules/bootstrap/dist/css/bootstrap.min.css'; import BootstrapTable from 'react-bootstrap-table-next'; 

首先,我们初始化数据和列变量,然后将数据赋值给BootstrapTable组件。该数据包含搞笑节目《发展受阻》中一些角色的名字。

const data = [  {id: 1, name: 'Gob', value: '2'},  {id: 2, name: 'Buster', value: '5'},  {id: 3, name: 'George Michael', value: '4'}];const columns = [{  dataField: 'id',  text: 'Product ID'}, {  dataField: 'name',  text: 'Product Name'}, {  dataField: 'value',  text: 'Product value'}]; 

Bootstrap 组件采用以下属性。

keyFielddata

render() 方法呈现一个包含三列的表:“ID”、“名称”和“值”。

class App extends Component {  render() {    return (      

Basic Table

); }}

要查看该表,请发出命令 npm start--reload。由 create-react-app 创建的配置会监视您的代码,并在您更改任何内容时重新编译,因此您只需运行它一次。然后,每个更改都会自动反映出来。

Compiled successfully!You can now view my-table-app in the browser.  Local:            https://localhost:3002  On Your Network:  http://192.168.43.206:3002Note that the development build is not optimized.To create a production build, use npm run build.

结果如下:

React中使用表格:第一部分

请注意,每列的宽度相同。

使用列

您可以控制列的许多方面。特别是,列宽可以用绝对单位、百分比来指定,也可以不指定。未指定列的列宽为均分后的余数。例如,对于我们的基本表,我们指定列如下:

第一列:20%第二列:6​​0%第三列:20%

您还可以管理文本和列的对齐方式以及标题和列的样式。以下是如何指定不同列宽、文本对齐方式和自定义样式的示例:

const columns = [{  dataField: 'id',  text: 'Product ID',  headerStyle: (colum, colIndex) => {          return { width: '20%', textAlign: 'center' };        }}, {  dataField: 'name',  text: 'Product Name',  sort: true,  headerStyle: (colum, colIndex) => {          return { width: '60%', textAlign: 'center' };        }}, {  dataField: 'value',  text: 'Product value',  headerStyle: (colum, colIndex) => {          return { width: '20%', textAlign: 'center' };        }  }]; 

表格现在看起来像这样:

React中使用表格:第一部分

设计您的表格

您已经了解了如何设置各个列和标题的样式,但样式设置可以走得更远。 React Bootstrap 表 2 提供了很多定制选项。首先,您只需将 stripedhover 属性添加到 BootstrapTable 组件即可获取每行的备用背景颜色。

飞书多维表格 飞书多维表格

表格形态的AI工作流搭建工具,支持批量化的AI创作与分析任务,接入DeepSeek R1满血版

飞书多维表格 26 查看详情 飞书多维表格

让我们将 stripedhover 属性应用到我们的表中。

class App extends Component {  render() {    return (      

Basic Table

); }}

React中使用表格:第一部分

查看如何使用不同颜色设置不同列的样式。

const columns = [{  dataField: 'id',  text: 'Product ID',  style: { backgroundColor: #00afb9 }}, {  dataField: 'name',  text: 'Product Name',  style: { backgroundColor: #fdfcdc }}, {  dataField: 'value',  text: 'Product value',  style: { backgroundColor: #fed9b7 }}]; 

React中使用表格:第一部分

表格排序

React Bootstrap Table 2 允许对列进行排序。这是通过在 columns 定义中提供 sort: true 属性来完成的。

const columns = [{  dataField: 'id',  text: 'Product ID',  style: { backgroundColor: #00afb9 }}, {  dataField: 'name',  text: 'Product Name',  style: { backgroundColor: #fdfcdc },  sort: true}, {  dataField: 'value',  text: 'Product value',      style: { backgroundColor: #fed9b7 }}]; 

选择行

将数据放入表中后,您可能需要选择某些行来对它们执行某些操作。 React Bootstrap 表 2 提供了多种选择选项。所有选项都组织在一个对象中,您可以将其作为 selectRow 属性传递给组件。以下是一些选择选项:

单选模式(单选按钮)多选模式(复选框)可配置的列选择宽度在行单击上选择:默认情况下,您必须单击选择器(单选按钮或复选框)隐藏选择列(如果在行单击上选择为 true 则很有用)更改选择的背景颜色初始选定行选择挂钩(在单行上或选择所有行时)。

以下组件演示了其中许多选项:

React中使用表格:第一部分

React 中数据表的其他库

让我们探索一些其他开源 React 表库。

反应虚拟化

react-virtualized 非常适合在渲染大型列表和表格数据时有效地显示大量数据。

react-virtualized 使用一种称为虚拟渲染的技术来有效地显示大量数据。虚拟渲染仅渲染可见的内容。例如,如果您有一个包含一千个项目的大型列表,react-virtualized 将在任何给定时刻仅显示一小部分数据(适合屏幕的数据),直到用户滚动以显示更多数据。其他功能包括:

支持网格、列表、表格、砌体和集合的渲染能够自动调整组件大小能够以相反的顺序显示项目能够自定义 CSS 类和样式

反应表

react-table 是一个轻量级的开源库,允许为 React 提供快速且可扩展的数据网格。它还支持钩子。它的一些最佳功能包括:

高度可定制支持排序、过滤器、行选择、列排序和行扩展完全可控的 API可动画且可虚拟可调整大小

反应数据网格

React Data Grid 是另一个使用 Bootstrap 的开源库,非常适合编辑表格。它还具有令人惊叹的用户界面。功能包括:

列排序、搜索、过滤和分组能够编辑列展开列以显示更多数据

结论

在本教程中,我们使用create-react-app创建了一个简单的React应用程序,添加了react-bootstrap-table2,用数据填充表,处理列,设置表样式并选择行。

在下一部分中,我们将通过扩展行、添加行、删除行以及分页、单元格编辑和高级自定义来继续这个旅程。敬请关注。

以上就是React中使用表格:第一部分的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/531961.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 11:00:52
下一篇 2025年11月9日 11:06:00

相关推荐

  • css中hover怎么使用

    CSS中的hover伪类是一个非常常用的选择器,它允许我们在鼠标悬停在元素上时改变其样式。本文将为大家介绍hover的用法,并提供具体的代码示例。 一、基本用法要使用hover,我们需要先为该元素定义一个样式,然后使用:hover伪类来制定鼠标悬停时对应的样式。例如,我们有一个button元素,当鼠…

    2025年12月24日
    000
  • 优先选择绝对定位的情况是什么?

    什么情况下应该优先考虑使用绝对定位? 绝对定位是CSS中一种重要的定位方式,它可以让一个元素相对于其最近的已定位的祖先元素进行绝对定位。在某些情况下,绝对定位可以提供更灵活,更精确的布局效果。本文将探讨在哪些情况下应该优先考虑使用绝对定位,并通过具体的代码示例来说明。 重叠元素的布局当页面中的元素需…

    2025年12月24日
    000
  • 如何使用Css Flex 弹性布局创建多列平铺效果

    如何使用CSS Flex弹性布局创建多列平铺效果 在Web开发中,我们经常会遇到需要创建多列平铺效果的情况,例如展示产品列表、照片墙等。传统的方法通常使用浮动布局或者设置固定宽度来实现,但是这些方法不够灵活,而且在适应性方面存在一定的问题。而CSS Flex弹性布局则提供了更加简单高效的解决方案。 …

    2025年12月24日
    000
  • CSS3的新特性一览:如何使用CSS3改变表格样式

    CSS3的新特性一览:如何使用CSS3改变表格样式 简介:CSS(层叠样式表)是用来控制网页样式和布局的标准语言。随着CSS3的推出,我们可以实现更多的图形效果和交互效果。本文将重点介绍如何通过CSS3的新特性来改变表格样式。 一、圆角表格在CSS3中,我们可以通过border-radius属性实现…

    2025年12月24日
    000
  • css如何设置表格的右边框

    在css中,可以使用border-right属性来设置表格的右边框,该属性的作用就是指定元素右边框的宽度、样式和颜色,语法“table{border-right: 边框宽度 边框样式 边框颜色;}”。 本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑…

    2025年12月24日
    000
  • css怎么去掉表格重复的边框

    在css中,可以使用border-collapse属性来去掉表格中重复的边框,该属性可以设置表格边框是折叠为单一边框还是分开的,只需要将值设置为collapse即可把重叠的边框合并在一起,成为一个边框,实现单线边框的效果。 本教程操作环境:windows7系统、CSS3&&HTML5…

    2025年12月24日
    000
  • react如何引入css

    引入方法有:1、行内样式;2、声明样式,行内样式类似,区别只是声明一个变量保存样式表绑定给style属性;3、import引入,React组件一般是一个文件夹,文件夹里包含对应的js和css,只要在js中引入同级的css即可。 本教程操作环境:windows7系统、CSS3&&HTM…

    2025年12月24日
    000
  • css怎么给表格设置边框

    css表格设置边框的方法:1、使用border属性给table元素添加边框,语法“table{border:宽度 样式 颜色;}”;2、使用border属性给td元素添加边框,语法“td{border:宽度 样式 颜色;}”。 本教程操作环境:windows7系统、CSS3&&HTM…

    2025年12月24日 好文分享
    000
  • css如何隐藏表格

    在css中,可以使用display属性隐藏表格,只需要给tr元素设置“display:none”样式即可。display属性用于定义建立布局时元素生成的显示框类型,当值为none时,表示该元素不会被显示,并脱离文档流,不占实际空间。 本教程操作环境:windows7系统、CSS3&&…

    2025年12月24日
    000
  • css中怎么插入表格

    css中插入表格的方法:使用【】标签在文档头部定义内部样式表,代码为【 hr{color:sienna;}】。 本教程操作环境:windows7系统、css3版,DELL G3电脑。 css中插入表格的方法: 当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过…

    2025年12月24日
    000
  • css设置表格某一行固定不动

    css设置表格某一行固定不动的方法:1、使用css定位th,并根据父级滚动条scrolltop的偏移量获取值,然后用js把偏移量赋值到th的定位top上;2、使用jq插件设置表格某一行固定不动。 本文操作环境:windows7系统、HTML5&&CSS3版本、Dell G3电脑。 c…

    2025年12月24日 好文分享
    000
  • css中grid布局和表格有什么区别

    css中grid布局和表格的区别是:1、grid是在css中实现的,表格是在html中实现的;2、grid是固定大小的,表格是大小可变的;3、grid继承自面板元素,表格继承自块元素。 网格布局(Grid)是最强大的 CSS 布局方案。 它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样…

    2025年12月24日
    000
  • 利用css实现的表格样式展示

    本文为大家展示了几款美观的表格样式,希望大家可以喜欢。 1、单像素边框CSS表格 table.gridtable {font-family: verdana,arial,sans-serif;font-size:11px;color:#333333;border-width: 1px;border-…

    2025年12月24日 好文分享
    000
  • 图文详解bootstrap框架中table的使用方法和相关样式

    bootstrap框架因为其使用方便,布局美观,且可以进行响应式布局,所以被广泛使用,这篇文章用bootstrap table实例和大家讲讲bootstrap中table的使用方法,以及table的相关样式,有一定的参考价值,感兴趣的朋友可以参考一下。 在使用bootstrap框架布局前,一定要先引…

    2025年12月24日 好文分享
    000
  • Dw中不用CSS样式为表格添加细线边框的方法

    这篇文章主要介绍了关于dw中不用css样式为表格添加细线边框的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 用CSS添加细线可以.不用也可以.本文就是介绍不用CSS也给表格添加细线的方法 近段时间在学习Dreamweaver做网站,正在学表格这一章呢,结果发现表格的边框设置非常…

    2025年12月24日 好文分享
    000
  • React与CSS3实现微信拆红包动画

    这次给大家带来React与CSS3实现微信拆红包动画,React与CSS3实现微信拆红包动画的注意事项有哪些,下面就是实战案例,一起来看一下。 微信红包曾经引爆过一系列的营销热潮,相信大家对于这种红包形式并不陌生,这里本着娱乐至上的精神用React简单地实现了拆红包的动画效果,供大家一起交流学习 用…

    2025年12月24日
    000
  • css中属性值继承如何使用

    这次给大家带来css中属性值继承如何使用,使用css中属性值继承的注意事项有哪些,下面就是实战案例,一起来看一下。 继承:html元素可以从父元素那里继承一部分css属性,即使当前元素没有定义该属性。 1.css可以和不可以继承的属性 不可继承的:display、margin、border、padd…

    好文分享 2025年12月24日
    000
  • CSS的显示模式如何使用

    这次给大家带来css的显示模式如何使用,使用css的显示模式的注意事项有哪些,下面就是实战案例,一起来看一下。 一. 标签补充  div 和s pan 1.什么是div? 作用: 一般用于配合css完成网页的基本布局 2.什么是span? 作用: 一般用于配合css修改网页中的一些局部信息 3.di…

    好文分享 2025年12月24日
    000
  • css的hack技术使用汇总

    什么是css hack? 在web开发中,我们经常会遇到各浏览器表现不一致的情况,由于不同厂商的流览器或某浏览器的不同版本,对CSS的支持、解析不一样,导致在不同浏览器的环境中呈现出不一致的页面展现效果。这时,我们为了获得统一的页面效果,就需要针对不同的浏览器或不同版本写特定的CSS样式,我们把这个…

    好文分享 2025年12月23日
    000
  • CSS3+React来实现微信拆红包动画的示例

    微信红包曾经引爆过一系列的营销热潮,相信大家对于这种红包形式并不陌生,这里本着娱乐至上的精神用React简单地实现了拆红包的动画效果,供大家一起交流学习 用css3绘制红包 .redpack { height: 450px; background: #A5423A; width: 300px; le…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信