antdesgin table斑马线_React中使用Ant Table组件

本文介绍了在React项目中使用Ant Design的Table组件来创建带有斑马线效果的表格。首先,需要引入antd.css以确保Table组件正常显示。接着,详细展示了如何创建ExampleTable组件,包括定义columns和data,以及处理行点击事件。文章还提到了Table组件的属性如rowSelection,用于处理选择功能,并提供了数据获取的方法,即通过onSelect和Column的render属性。最后,文章提及博客新增了‘打赏’功能,并指导如何在个人博客中实现类似功能。
摘要由CSDN通过智能技术生成

一、Ant Design of React

二、建立webpack工程

webpack+react demo下载

项目的启动,

三、简单配置

1.工程下载下来之后,在src目录下新建目录“table”,新建app.js,内容如下。

import React from 'react';

import ReactDOM from'react-dom';

import ExampleTable from'./ExampleTable';

import'antd/dist/antd.css';

ReactDOM.render

(,

document.body

);

注:记住引入antd.css, 否则Table组件无法正常显示。

2.新建ExampleTable.js, 内容如下。

import { Table } from 'antd';

import React from'react';

class ExampleTable extends React.Component {

constructor(props) {

super(props);this.showCurRowMessage = this.showCurRowMessage.bind(this);

}

componentDidMount() {

}//展示当前行信息

showCurRowMessage(record){

alert("key:"+record.key + " name:"+record.name + " age:" + record.age + " address:" + record.address + " description:" +record.description);

}

render() {

let self= this;

const columns=[

{ title:'姓名', dataIndex: 'name', key: 'name'},

{ title:'年龄', dataIndex: 'age', key: 'age', render: (text, record, index) => (Math.floor(record.age/10))*10+"多岁"},

{ title: '住址', dataIndex: 'address', key: 'address'},

{ title:'描述', dataIndex: 'description', key: 'description'},

{ title:'操作', dataIndex: '', key: 'operation', render: function(text, record, index) {

alert(tex

要在React项目使用Ant DesignTable组件动态生成表头,需要完成以下步骤: 1. 定义表格数据源 首先需要定义表格的数据源,可以使用一个数组来存储表格的数据,例如: ```javascript const data = [ { key: '1', name: 'John Brown', age: 32, address: 'New York No. 1 Lake Park', }, { key: '2', name: 'Jim Green', age: 42, address: 'London No. 1 Lake Park', }, { key: '3', name: 'Joe Black', age: 32, address: 'Sidney No. 1 Lake Park', }, ]; ``` 2. 定义表头数据源 接下来需要定义表头的数据源,可以使用一个数组来存储表头的数据,例如: ```javascript const columns = [ { title: 'Name', dataIndex: 'name', key: 'name', }, { title: 'Age', dataIndex: 'age', key: 'age', }, { title: 'Address', dataIndex: 'address', key: 'address', }, ]; ``` 3. 动态生成表头 在Ant DesignTable组件,可以使用columns属性来指定表头数据源。为了动态生成表头,需要在渲染组件时动态生成表头的数据源,并将其传递给Table组件的columns属性,例如: ```javascript import React, { useState } from 'react'; import { Table } from 'antd'; const DynamicTable = () => { const [columns, setColumns] = useState([ { title: 'Name', dataIndex: 'name', key: 'name', }, { title: 'Age', dataIndex: 'age', key: 'age', }, { title: 'Address', dataIndex: 'address', key: 'address', }, ]); const handleAddColumn = () => { const newColumn = { title: `Column ${columns.length + 1}`, dataIndex: `column${columns.length + 1}`, key: `column${columns.length + 1}`, }; setColumns([...columns, newColumn]); }; return ( <> <button onClick={handleAddColumn}>Add Column</button> <Table dataSource={data} columns={columns} /> </> ); }; export default DynamicTable; ``` 在上面的代码,我们使用useState钩子来定义表头的数据源,并渲染一个添加列的按钮。当点击添加列按钮时,会动态生成一个新的列,并将其添加到表头的数据源。这样就可以动态生成表头了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值