带有查询参数的 Gatsby navigate()

Gatsby navigate() with query parameters

我处于一个奇怪的卡点。我正在尝试使用来自 gatsby 的 navigate() 以编程方式导航(我也尝试过 @reach/router)。但是每当我像这样将查询参数添加到 url 时:

const id = "001"
const title = "information"
navigate(`/subpage?id=${id}&title=${title}`);

我导航到 404 页面,尽管地址栏中显示的 url 是正确的,包括参数。重新加载页面后,一切正常。

我找到了一些答案,但出于某种原因,其中 none 对我有用。还有什么你能想到我在这里做错的吗?

Thanks for the heads up. I just tried it and it seems as if the error only appears during development with gatbsy develop, not after running the build output with gatsby serve.

我就是这么想的。发生这种情况是因为 Gatsby 在生产环境中确实会在导航时进行重定向,但它不会像您在开发中描述的场景那样检查是否应该在初始渲染期间进行重定向。

运行:

gatby build && gatsby serve

建立您的网站并查看预期结果。导航应该没问题。