Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否为定位链接设置偏移量?_Javascript_Reactjs_Gatsby_Anchor Scroll_Reach Router - Fatal编程技术网

Javascript 是否为定位链接设置偏移量?

Javascript 是否为定位链接设置偏移量?,javascript,reactjs,gatsby,anchor-scroll,reach-router,Javascript,Reactjs,Gatsby,Anchor Scroll,Reach Router,有办法吗 navigate('/#about') 用到达路由器,但是偏移量,比如说,-16px? 我还没有找到任何关于这方面的信息。另一个解决方案可能是监听路由更改并调用滚动(0,-16)如果url包含锚定。看见也许在调用导航之后调用滚动就足够了 您可以像这样向链接传递状态: ... navigate( "/#about/", { state: { offset: "-16px" }, } ) ... 然后从目标组件访问状态。您可以将其传递到该组件

有办法吗

navigate('/#about')
到达路由器
,但是偏移量,比如说,
-16px

我还没有找到任何关于这方面的信息。

另一个解决方案可能是监听路由更改并调用
滚动(0,-16)如果url包含锚定。看见也许在调用
导航
之后调用
滚动
就足够了

您可以像这样向链接传递状态:

...

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

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

请在此处阅读更多信息: