gpt4 book ai didi

reactjs - React Router browserHistory 推送和 anchor

转载 作者:行者123 更新时间:2023-12-05 04:08:25 26 4
gpt4 key购买 nike

使用 browserHistory 时从 React Router 4 以编程方式导航到 anchor :

import { withRouter } from 'react-router-dom'
...
props.history.push('#blah')

我可以看到地址栏中的哈希值发生变化,但页面没有滚动到相关的 anchor 。我已经用标准<a href="#blah">Blah</a>检查过了这很好用。知道我做错了什么吗?谢谢 :)

更新
刚查过<Link to="#blah">Blah</Link>也不起作用...我假设 react Links也可以使用历史对象吗?

最佳答案

经过一些调查,我决定添加一个函数来处理 componentDidUpdate 生命周期事件:

componentDidUpdate: props => {
const selected = props.history.location.hash
if(selected && selected.length > 0) {
const elem = document.querySelector(selected)
elem && elem.scrollIntoView()
}
}

这很好地解决了问题:)

关于reactjs - React Router browserHistory 推送和 anchor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47613777/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com