diff --git a/components/table/demo/paging.md b/components/table/demo/paging.md index 7bcd768db..f90a5b33a 100644 --- a/components/table/demo/paging.md +++ b/components/table/demo/paging.md @@ -24,7 +24,7 @@ var columns = [{ }]; var data = []; -for (let i=0; i<18; i++) { +for (let i=0; i<46; i++) { data.push({ name: '李大嘴' + i, age: 32, diff --git a/components/table/index.jsx b/components/table/index.jsx index 15bef45b8..76c4e46c8 100644 --- a/components/table/index.jsx +++ b/components/table/index.jsx @@ -26,10 +26,7 @@ export default React.createClass({ } let noPagination = (this.props.pagination === false); - let pagination = objectAssign({ - pageSize: 10, - total: this.props.dataSource.length - }, this.props.pagination); + let pagination = this.initPagination(this.props.pagination); return { selectedRowKeys: [], @@ -47,6 +44,21 @@ export default React.createClass({ size: 'normal' }; }, + componentWillReceiveProps(nextProps) { + if ('pagination' in nextProps) { + let noPagination = (nextProps.pagination === false); + this.setState({ + pagination: this.initPagination(nextProps.pagination), + noPagination: noPagination + }); + } + }, + initPagination(pagination) { + return objectAssign({ + pageSize: 10, + total: this.props.dataSource.length + }, pagination); + }, toggleSortOrder(order, column) { let sortColumn = this.state.sortColumn; let sortOrder = this.state.sortOrder;