React-Paginate不可点击

时间:2019-03-03 11:41:00

标签: javascript reactjs pagination

我一直在尝试使用React-paginate库进行分页,但是它所形成的按钮不可点击,我不明白我在做什么错
而且没有给出示例,也没有提出问题

使用此分页的正确方法是什么

这是我的App.js的代码

    import React, { Component } from 'react';
import './App.css';
import Navbar from '../src/components/navbar/navbar'
import SearchIt from '../src/components/searchField/search'
import Container from 'react-bootstrap/Container'
import Card from '../src/components/cards/cards'
import Axios from 'axios'
import Pagination from '../src/components/pagination/paginating'

class App extends Component {
  state={
    fetchedData:[]
  }

  componentDidMount(){
    Axios.get('http://localhost:3000/1').then((responseData)=>{
      //console.log(responseData.data)
      this.setState({fetchedData:responseData.data})
    }).catch((err)=>{
      console.log(err)
    })
  }
  handlePageClicked = data => {
    let selected = data.selected;
    console.log(selected)    
  };

  render() {

    return (
      <div className="App">
        <Navbar/>
        <Container> 
          <SearchIt/>
          <Card data={this.state.fetchedData}/>
          <Pagination handlePageClick={this.handlePageClicked}/>
        </Container>
      </div>
    );

  }
}

export default App;

这是paginating.js的代码

   import React,{Component} from 'react'
import ReactPaginate from 'react-paginate';
import './paginateStyle.css'


 const page = (props)=>{
     return(

      <ReactPaginate
          previousLabel={'previous'}
          nextLabel={'next'}
          breakLabel={'...'}
          breakClassName={'break-me'}
          pageCount={10}
          marginPagesDisplayed={2}
          pageRangeDisplayed={5}
          onPageChange={props.handlePageClick}
          containerClassName={'pagination'}
          subContainerClassName={'pages pagination'}
          activeClassName={'active'}
        />

     )
 }

 export default page

这些按钮不可点击 this buttons

1 个答案:

答案 0 :(得分:1)

我做了一个快速的样本,它奏效了。

import ReactPaginate from 'react-paginate';

const Pagination = (props) => {
return (

<ReactPaginate
  previousLabel={'previous'}
  nextLabel={'next'}
  breakLabel={'...'}
  breakClassName={'break-me'}
  pageCount={10}
  marginPagesDisplayed={2}
  pageRangeDisplayed={5}
  onPageChange={props.handlePageClick}
  containerClassName={'pagination'}
  subContainerClassName={'pages pagination'}
  activeClassName={'active'}
  />

 )
}


class App extends Component {
 state = {
  selectedPage: 0
 }

handlePageClicked = data => {
  let selected = data.selected;
  this.setState({
    selectedPage: selected
  })
  console.log(selected)
};

render() {

return (
  <React.Fragment>
    <div>You selected:  {this.state.selectedPage}</div>

    <div className="App">
      <Pagination handlePageClick={this.handlePageClicked} />
    </div>
  </React.Fragment>
 );

 }
} 

paginateStyle.css中可能存在某些内容,导致分页无法正常工作,或者您的应用程序中存在某些其他CSS。

编辑: 根据评论,具有较高z索引的ui组件位于它们上方,并且不可见/不可点击