【发布时间】:2021-10-11 08:43:22
【问题描述】:
在分页方面需要帮助。现在我的应用程序可以更改页面,但如果我想发送像/character?page=4 这样的请求,它总是会抛出我/character?page=1 this is not help,因为我使用路由器。我不知道如何解决我的问题
我的app.js
function App() {
return (
<>
<Router>
<Header />
<Switch>
<Route exact path='/' component={Home} />
<Route exact path='/character' component={AllCharacters} />
<Route component={NotFound} />
</Switch>
<Footer />
</Router>
</>
);
}
CharacterList.jsx
// API Data
const url = "https://rickandmortyapi.com/api/character";
// Fetching Page
const fetchPage = (page) => {
// Init loading while page load
setLoading(true);
const query = `${url}?page=${page}`;
fetchData(query);
setLoading(false);
};
// Change pages
const { push } = useHistory();
const handleChanger = (event, page) => {
fetchPage(page);
push({
pathname: "/character",
search: `?page=${page}`,
});
};
<Pagination
count={info.pages}
showLastButton
showFirstButton
onChange={handleChanger}
/>
【问题讨论】:
-
“分页”的代码是什么,您是否检查过 onChange 是否正常工作并为页面设置正确的值?
-
分页是 Material-ui 组件。是的,我检查了 onChange,它工作正常
-
它没有解决
标签: reactjs pagination fetch router