React Pager分页实例
React的分页实例来了![适合与webpack组合使用,不太适合纯html页面调用,不过可以根据您自己的情况进行改写]
define(function(require,exports,module){ 'use strict'; var React = require('reactAddons'); module.exports = React.createClass({ clickHandler:function(e){ e.preventDefault(); this.props.listData(e.currentTarget.dataset.page); }, render:function(){ var cx = React.addons.classSet; var preClass = cx({ 'previous':true, 'disabled':this.props.pre_stop == true }); var nextClass = cx({ 'next':true, 'disabled':this.props.next_stop == true }); return ( <nav> <ul className="pager"> <li className={preClass}> <a href="#" onClick={this.clickHandler} data-page={this.props.page-1}> <span aria-hidden="true" >←</span> Older </a> </li> <li className={nextClass}> <a href="#" onClick={this.clickHandler} data-page={this.props.page+1}> Newer <span aria-hidden="true">→</span> </a> </li> </ul> </nav> ); } }); });
如何调用?
const PagerTest = React.createClass(){ getInitialState:function(){ return { lostData: { lostUserItem: [], totalCount: 0, currentTotalCount: 0 }, pagesize: 20, page: 1, params: {} } }, render:function(){ let nextStop = false; let preStop = false; //this.state.lostData.lostUserItem 这个就是一个数据数组 if (this.state.lostData.lostUserItem.length < this.state.pagesize) { nextStop = true; } if ((this.state.page - 1) <= 0) { preStop = true; } let pager_props = { page: this.state.page, pre_stop: preStop, next_stop: nextStop, listData: this.loadMorePage }; return ( <Pager {...pager_props}/> ); } }
好了,不了解的可以加群进行交流,或者微博联系
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 博客( https://www.gowhich.com ),版权所有,侵权必究。
本文永久链接: https://www.gowhich.com/blog/615
版权声明
由 durban创作并维护的 Gowhich博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文首发于 Gowhich博客( https://www.gowhich.com ),版权所有,侵权必究。
本文永久链接: https://www.gowhich.com/blog/615