From 38083e5a9f94b52dd6021a5241d81da720ef9eba Mon Sep 17 00:00:00 2001 From: Benjy Cui Date: Thu, 24 Dec 2015 10:12:31 +0800 Subject: [PATCH] feat: expose `onShowSizeChange` --- components/table/demo/paging.md | 5 ++++- components/table/index.jsx | 15 ++++++++++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/components/table/demo/paging.md b/components/table/demo/paging.md index a6a92123be..fa2c7c2a0d 100644 --- a/components/table/demo/paging.md +++ b/components/table/demo/paging.md @@ -36,7 +36,10 @@ for (let i = 0; i < 46; i++) { const pagination = { total: data.length, current: 1, - showSizeChanger: true + showSizeChanger: true, + onShowSizeChange: function(current, pageSize) { + console.log('Current: ', current, '; PageSize: ', pageSize); + } }; ReactDOM.render( diff --git a/components/table/index.jsx b/components/table/index.jsx index 5f58d0d429..e666edae4a 100644 --- a/components/table/index.jsx +++ b/components/table/index.jsx @@ -410,10 +410,15 @@ let AntTable = React.createClass({ }, handleShowSizeChange(current, pageSize) { - let pagination = objectAssign(this.state.pagination, { + const pagination = this.state.pagination; + if (pagination.onShowSizeChange) { + pagination.onShowSizeChange(current, pageSize); + } + + let nextPagination = objectAssign(pagination, { pageSize: pageSize }); - this.setState({ pagination }); + this.setState({ pagination: nextPagination }); }, renderPagination() { @@ -427,12 +432,12 @@ let AntTable = React.createClass({ }); let total = this.state.pagination.total || this.getLocalData().length; return (total > 0) ? - : null; + onShowSizeChange={this.handleShowSizeChange} /> : null; }, prepareParamsArguments(state) {