在实现ReactJS分页控件时遇到问题

时间:2017-09-13 07:54:36

标签: javascript reactjs

我在分页的每个点击处理程序中收到最大页面大小(例如,当点击2时,我接收4作为处理程序参数)。这段代码有什么问题?

更新

class PagingControl extends React.Component{

    constructor(props) {
        super(props);

        this.state = {pageNumber:0, pageSize:20, totalPages:0};
        this.handlePageChanged = this.handlePageChanged.bind(this);
    }

    handlePageChanged(pageNumber){
        this.setState({pageNumber: pageNumber})
        this.props.handlePageChanged(pageNumber);
    }

    render(){

        const pages = [];
        for(var pageNumber=0 ; pageNumber<this.state.totalPages ; pageNumber ++){
            var opts={}
            if(pageNumber == this.state.pageNumber){
                opts['className'] = 'active';
            }
            pages.push(<li onClick={() => this.handlePageChanged(pageNumber)} {...opts}><a href="#">{pageNumber + 1}</a></li>);
        }

        return (<ul className="pagination pagination-lg">{pages}</ul>);
    }
}

1 个答案:

答案 0 :(得分:0)

我找到了解决方案,只是将for循环中的var pageNumber=0更改为let pageNumber=0