0
Ich erhalte die maximale Größe der Seiten in jedem Click-Handler des Paging (zum Beispiel wenn ich 2 anklicke Ich erhalte 4 als Handler-Parameter). Was ist mit diesem Code falsch?Probleme bei der Implementierung von ReactJS Paginierungskontrolle
UPDATE
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>);
}
}
Sie bräuchten Ihre Seitennummer an Ihren Handler zu binden. Wie folgt: 'onClick = {() => this.handlePageChanged.bind (this, pageNumber)}' – Chris
@Chris Danke, ich habe meinen handlePageChanged-Handler bereits definiert und möchte ihn wiederverwenden. Aktualisierung der Beschreibung –