reactjs 点击返回按钮时,分页恢复为1号

dbf7pr2w  于 2023-02-04  发布在  React
关注(0)|答案(1)|浏览(142)

我正在ReactJS中创建一个分页,并从分页页面重定向到其他页面。如果我在分页的第4页,从第4页,我去了一些其他页面,当我回到上一页,我应该在分页的第4页。但按下后退按钮后,分页再次从1开始。我如何解决这个问题?
Pagination.js

import React from 'react'
import { Pagination } from '@mui/material';

const CustomPagination = (props) => {

  const handlePageChange = (event, page) => {
    props.setPage(page);
  }

  return (
    <Pagination 
    count = {10}
    onChange = { handlePageChange}
    color = "primary"
    size='large'
    />
  )
}

export default CustomPagination

Home.js

const [page, setPage] = useState(1);

useEffect(() => {
    fetchData();
  }, [page])

我该怎么解决呢?

kqlmhetl

kqlmhetl1#

出现此问题的原因是,当您向后移动并且page值设置为1时,页面将完全重新呈现:const [page, setPage] = useState(1);
您可以在查询中存储页面:/your-route?page=4
像这样的东西应该工作的Next.js:

import { useRouter } from 'next/router';
...

const router = useRouter();
const { page } = router.query;

const [page, setPage] = useState(page || 1);

相关问题