我的反应项目中有多个页面,每当我从一个页面切换到另一个页面时,页面位置从底部开始,但是,我想在渲染页面后保持在顶部。我目前正在使用路由器 v5,但找不到适用于路由器 v5 的任何解决方案。
我也尝试了另一个版本的解决方案,但是它没有用,你能帮我解决这个问题吗?
这些是我迄今为止尝试过的一些示例,但没有一个成功。
<Router onUpdate={() => window.scrollTo(0, 0)} history={createBrowserHistory()}>
...
</Router>
Run Code Online (Sandbox Code Playgroud)
function handleUpdate() {
let {
action
} = this.state.location;
if (action === 'PUSH') {
window.scrollTo(0, 0);
}
}
...
<Router
onUpdate={handleUpdate}
/>
Run Code Online (Sandbox Code Playgroud)