Reach Routers navigation()是否具有锚链接的偏移



有没有办法进行

navigate('/#about')

具有reach-router,但是具有例如-16px的偏移?我一直找不到关于这方面的任何信息。

您可以将状态传递给链接,如下所示:

...
navigate(
"/#about/",
{
state: { offset: "-16px" },
}
)
...

然后从目的地组件访问该状态。您可以将其传递给该组件的任何部分。

点击此处了解更多信息:https://www.gatsbyjs.org/docs/gatsby-link/#add-状态到程序导航

另一种解决方案可以是侦听路由更改,如果url包含锚,则调用scroll(0, -16);。看见https://developer.mozilla.org/en-US/docs/Web/API/Window/scroll.也许在呼叫navigate之后再呼叫scroll就足够了。

相关内容

  • 没有找到相关文章

最新更新