Reactjs 使用gatsby以编程方式导航到动态url

Reactjs 使用gatsby以编程方式导航到动态url,reactjs,routes,gatsby,Reactjs,Routes,Gatsby,我正在使用“导航”移动到另一个URL。我看到许多帖子使用链接移动到另一个带有动态url的页面。但是我想更改url而不必编写jsx 当我导航到下面的url时,我得到一个404错误 navigate(`/vidx/${u}`, { state: { vid: r } }) 我将gatsby-node.js改为following,仍然得到相同的错误。我在pages文件夹中有一个名为vidx.js的文件 exports.onCreatePage = async ({ page, a

我正在使用“导航”移动到另一个URL。我看到许多帖子使用
链接
移动到另一个带有动态url的页面。但是我想更改url而不必编写
jsx

当我导航到下面的url时,我得到一个404错误

navigate(`/vidx/${u}`, {
      state: { vid: r }
    })
我将gatsby-node.js改为following,仍然得到相同的错误。我在
pages
文件夹中有一个名为
vidx.js
的文件

exports.onCreatePage = async ({ page, actions }) => {   
    const { createPage } = actions
    if (page.path.match(/^\/vidx/)) {
      page.matchPath = "/vidx/*";
      createPage(page); 
    } 
}
我的url如下-
www.xyz.com/vidx/123456789
。号码
123456789
将取决于登录的用户

我想重定向到vidx.js;但是URL应该是/vidx/123456789

这永远不会起作用,因为
/vidx/123456789
将始终抛出
404
错误,因为它不是生成的,也不存在,它是一个单独的新页面


您可以使用一件简单的事情:
/vidx?queryParameter=123456789
。在这种情况下,您的页面将保持为
/vidx
,您可以使用
查询参数
以自己的逻辑制作内容。

是否存在
vidx/123456789
路径?否。每当新用户注册时,此数字会动态生成,但我无法获取。您正在尝试重定向到未创建的页面?我想重定向到
vidx.js
;但是URL应该是
/vidx/123456789
谢谢。我将url更改为
http://localhost:8000/vidx/?v=1613907113203
。我在pages文件夹中有一个vidx.js。但是我仍然在src/pages/vidx.js的站点目录中创建了一个React.js组件,该页面将自动刷新以显示您创建的新页面组件。
您可以共享vidx.js页面的代码吗?这里-嘿,正在工作。我把盖茨比洗干净了。谢谢!