问题标签 [reach-router]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
270 浏览

javascript - 为什么@reach/router 会自动将路径路由到页面目录名称?

我目前正在使用 Gatsby 和 @reach/router

我想将我的关于页面链接到“/profile”

我的路由器看起来像:

为什么我的关于页面显示在“/about”而不是“/profile”上?

另外,您将路由器组件放在哪里?目前,上面的代码是我的 app.js 文件。这是最佳实践吗?

0 投票
1 回答
224 浏览

excel - 路由似乎在基于 React 的插件中不起作用

我使用 Yeoman 生成器创建了一个全新的 Excel 插件,并选择了 React Task 窗格选项。

我正在尝试构建一个扩展,该扩展将为插件的不同功能提供多个页面,因此我安装了到达路由器并编写了一些基本路由,就像我为常规 React 应用程序所做的那样。但是,Cannot GET /insert每当尝试访问路由时,我都会在 Excel 的插件窗格中显示此错误。

这是我在App.js文件中的代码:

我只包含了 return 语句,因为其他所有内容几乎都是我使用 Yeoman Generator 获得的默认启动代码。此问题可能与 Excel 插件没有直接关联,而是与 React 路由有关。我只在我的项目中使用到达路由器来进行不太复杂的路由,但我的代码似乎是有效的,所以我想知道这是否不是manifest.xml文件的问题,但我不确定。

知道问题可能来自哪里吗?

感谢您的时间。

0 投票
1 回答
82 浏览

css - 到达路由器背景图像有时无法正确显示

我已经创建了一个 create-react-app 项目,现在我刚刚开始使用reach-router 向它添加路由。我有一个带有背景图像的简单 TitleHeader 组件,我将其与每个路由的组件一起使用。它们大部分都可以工作,但是每当我导航到一个特定的(DissectionGame)时,背景图像都不会出现,然后,它也不会出现在任何其他组件上。

以下是相关的片段,尽管它们确实没有显示问题。在这个级别,所有组件实际上都是相同的,如果我在 DissectionGame 组件中注释掉其他嵌套组件,它也可以正常工作。鉴于此,我认为问题与这些组件有关,但我只是不知道要看什么以及什么可能会影响 TitleHeader 组件中的背景图像。

有人对可能发生的事情有任何线索吗?图像的路径能否以某种方式被踩踏,如果是这样,怎么办?我现在只在 React 工作了几个月,所以一切都还很新鲜。我会很感激任何建议!

0 投票
1 回答
38 浏览

reactjs - 如何使用到达/路由器创建列表/详细信息视图

由于reach/router 不支持可选参数,您将如何创建这样的视图?

在左侧有一个Books应该呈现的列表:

  • /books
  • /books/:isbn

在右侧,如果在,框显示Detail一本书的 s,如果在/books/:isbn,则显示一个空框/books

0 投票
0 回答
42 浏览

reactjs - 反应布局组件在反应路由器中渲染特定路由

我正在使用 Gatsby @reach/router,我有这个简单的路由器

Layout组件上,我有这么简单:

问题出在<Auth/>组件上。它在上面渲染<Header/>。为什么?我正在包装一个特定的路线来渲染<Layout/>,除了<Auth/>. 我做错了什么?有什么解决办法吗?

0 投票
1 回答
1564 浏览

javascript - 到达路由器刷新页面

设置:我有一个将数据发送给动作创建者的表单,动作创建者又提交给 API 并获取结果。我想要的是当表单提交成功时,用空白输入刷新表单。

这是组件的样子

这是 console.log(this.props) 的结果

这就是 actionCreator 的样子

当前行为

当我提交表单并且 API 返回 201 时,页面不会刷新并且输入不会变为空白

预期行为

当我从 API 获得 201 时,页面应该刷新并且输入应该是空白的。

请帮助我如何实现这一目标。

0 投票
1 回答
76 浏览

reactjs - 在到达路由器中使用链接时出错。但是当我使用锚标记时路由工作正常

这是我的 App.js

这是我的 Navbar.js

但是我收到一个错误:元素类型无效:需要一个字符串(对于内置组件)或一个类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。

但是当我使用锚标签而不是链接时,我没有收到任何错误,并且应用程序运行正常。在这方面需要帮助

但是当我在 App.js 中编写整个 Navbar 组件时,如下所示。

上面的 App.js 工作正常。

0 投票
1 回答
1568 浏览

reactjs - 使用@reach/router 时如何设置搜索参数

使用@reach/router 时如何设置搜索参数?我只是使用了 props.history.push 但 props.history 仍然未定义。这是页面状态更改时的代码

0 投票
0 回答
238 浏览

gatsby - Gatsby 客户端页面闪烁且不呈现

第一次来这里,希望你能提供帮助,因为我在谷歌上找不到解决方案。

我正在尝试在 Gatsby 上设置仅客户端页面。我创建了“App.js”组件并设置了从 Gatsby 文档复制代码片段的路线。

盖茨比-node.js

当我尝试导航到其中一个客户端路由(例如应用程序/配置文件)时,我可以看到客户端页面显示一瞬间,然后它变为空白。如果我尝试刷新它说该页面不存在。

在这里观看视频:https ://drive.google.com/file/d/1l6gphVa7X1r7L_bb0SWJuFIH4W1wtW-J/view?usp=sharing

提前谢谢了

保罗

0 投票
1 回答
688 浏览

reactjs - 使用“Navigate(-1)”无法返回 Gatsby 中的先前位置

我正在尝试在 Gatsby 中创建一个简单的“返回”按钮,该按钮返回上一页并保留滚动位置。使用浏览器后退按钮时已经发生这种情况,但我正在努力制作自定义按钮。我在 Reach Router 文档中读到,您可以将 -1 作为参数添加到导航函数以返回以前的位置,但它会将数值扔到 url 中并给我一个 404。有人能给我一个想法我做错了什么?或者是否有其他人设法为 Gatsby 项目制作了一个功能性的后退按钮?

这是我的代码-