废话不多说,直接上代码。一目了然。

import React, { Component } from "react";
import { Table } from "antd";
import PropTypes from "prop-types"; class TableBar extends Component {
constructor(props) {
super(props);
this.onScrollEvent = this.onScrollEvent.bind(this);
} onScrollEvent() {
if (this.scrollRef.scrollTop + this.scrollRef.clientHeight ===
this.scrollRef.scrollHeight) {
console.info('到底了!');
// 这里去做你的异步数据加载
}
} render() {
const {
dataSource,
columns,
loading,
pagination,
isBordered,
onRowClickCb,
scroll,
titleCb,
footerCb,
rowSelection,
rowKey
} = this.props.config; return (
<div
onScrollCapture={() => this.onScrollEvent()}
style={{ height: '200px', overflowY: 'scroll' }}
ref={c => {
this.scrollRef = c;
}}
>
<Table
dataSource={dataSource}
columns={columns}
rowKey={rowKey?rowKey:record => record.id}
loading={loading}
pagination={pagination}
rowSelection={rowSelection}
bordered={isBordered}
scroll={scroll}
onRowClick={onRowClickCb}
title={titleCb}
footer={ footerCb}
/>
</div>
);
}
} TableBar.propTypes = {
config: PropTypes.shape({
dataSource: PropTypes.array,
columns: PropTypes.array.isRequired,
loading: PropTypes.bool,
isBordered: PropTypes.bool,
scroll: PropTypes.object,
onRowClickCb: PropTypes.func,
titleCb: PropTypes.func,
footerCb: PropTypes.func,
rowSelection: PropTypes.object,
pagination: PropTypes.oneOfType([PropTypes.object, PropTypes.bool])
})
}; export default TableBar;

借鉴地址:https://segmentfault.com/q/1010000016507297/a-1020000016507798

react中使用antd Table组件滚动加载数据的实现的更多相关文章

  1. vue2.0无限滚动加载数据插件

      做vue项目用到下拉滚动加载数据功能,由于选的UI库(element)没有这个组件,就用Vue-infinite-loading 这个插件代替,使用中遇到的一些问题及使用方法,总结作记录! 安装: ...

  2. PHP+InfiniteScroll实现网页无限滚动加载数据实例

    PHP+InfiniteScroll实现网页无限滚动加载数据实例,实现原理:当滚动条到底离网页底部一定长度的时候,向后台发送页数并获取数据. 首先我们在页面上先放置10条数据,即第一页,每一项都是p标 ...

  3. Vue无限滚动加载数据

    Web项目经常会用到下拉滚动加载数据的功能,今天就来种草Vue-infinite-loading 这个插件,讲解一下使用方法! 第一步:安装 npm install vue-infinite-load ...

  4. jquery ajax 滚动加载数据

    jquery php 滚动加载数据(文件包 rollingpage) 效果如下: 页面加载时候($function(){ 自动加载第一页数据 }) 设置: var winH = $(window).h ...

  5. 基于jquery鼠标或者移动端滚动加载数据

    基于jquery鼠标或者移动端滚动加载数据 var stop = true; // 防止重复请求数据 $(window).scroll(function () { totalheight = pars ...

  6. h5页面列表滚动加载数据

    h5列表滚动加载数据很常见,以下分享下今天做的案例: 前言 这个效果实现需要知道三个参数 1. scrollTop -- 滚动条距离顶部的高度 2. scrollHeight -- 当前页面的总高度( ...

  7. AngularJS 无限滚动加载数据控件 ngInfiniteScroll

    在开发中我们可能会遇到滚动鼠标到浏览器底部实现数据的加载,js和jquery实现都不复杂都是既然AngularJS提供现成的我们怎么不用昵. ng-infinite-scroll.js这个组件则可以实 ...

  8. HTML5商城开发一 楼层滚动加载数据

    对于楼层加载在以前只是个想法,从来没实现过,刚好项目中碰到,再此总结一下 场景:HTML5,局部商品列表信息滚动(局部滚动条) 1.通过jq设置subCategoryScroll的高度为屏幕显示高度( ...

  9. infinite-scroll插件无限滚动加载数据的使用

    网上对于infinite-scroll插件使用的例子不多.但由于它的出现,鼓吹了瀑布流形式的页面展示方式,所以不得不了解了解这种新的分页方式. 官网上有对infinite-scroll的详细描述,但一 ...

随机推荐

  1. java 之 dom4j解析xml

    *dom4j,是一个组织,针对xml解析,提供解析器dom4j *dom4j不是javase的一部分,想要使用需要导入dom4j提供的jar包 *第一步:创建lib文件夹,将压缩文件放到此处 *第二步 ...

  2. vue中find函数

    let obj = this.role.find(v => v.code === res.company.role)循环 data对象中的role数组 ,每个数组元素用v代替,code为他的键, ...

  3. python时间

    #!/usr/bin/python # -*- coding: utf-8 -*- import sys import time import datetime line="Wed 11/2 ...

  4. poi导出excel 并处理插入网络图片 范例 处理文件下载中文乱码

    package com.inborn.inshop.controller.product; import com.inborn.inshop.common.util.DateUtils;import ...

  5. PHP中SESSION自定义会话管理器

    <?php class CustomSession implements SessionHandlerInterface{ private $link; private $lifetime; p ...

  6. Spring-json依赖

    <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jacks ...

  7. _attribute_character

    职业属性控制表 comment 备注                                                                            classI ...

  8. xxx did not match any file(s) known to git

    切换分支的时候,报了标题这么个错误,error: pathspec ''xxx did not match any file(s) known to git. 看见不能切换分支,我首先 git sta ...

  9. .NET扩展方法 封装公用方法

    定义方法的时候  第一个参数前面加上this   表示这个方法可以被IQueryable类型的对象.出来  调用的时候 只用传第二个参数  第一个参数不用传 第一个参数就是.出当前方法的参数 定义扩展 ...

  10. aar的使用(module或者library)

    引入: 1. android studio正常的module引用aar文件需要配置如下: ① 在module的build.gradle的android节点下 repositories { flatDi ...