问题标签 [react-router-dom]

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 回答
315 浏览

javascript - react-router-dom 没有重定向到除 '/' 之外的任何路径!

我正在使用反应router-router-dom,我无法重定向到任何路径like <Route path="/store" component={App}/>!但它只重定向到'/'这条路径。我找不到这里有什么问题! 这是我的依赖项的屏幕截图

我正在使用webpac^2. 反应路由器dom^4.1.1

这是我的代码

0 投票
1 回答
70 浏览

javascript - 反应路由器错误,即使不使用它

我对 react-router-dom 有一些问题,特别是:

我想知道这可能来自哪里。我从编译文件中完全删除了它。

我使用 webpack 编译主要的 react 文件,我将其修改为尽可能简单,只是为了找出恼人的错误来自哪里:

应用程序.js

所以我基本上不再react-router-dom在任何地方使用,但由于某种原因,错误仍然存​​在。

webpack 配置:

0 投票
3 回答
23690 浏览

reactjs - React Router v4 渲染多个路由

我正在创建一个 SPA,我正在尝试使用react-router-dompackage version在应用程序中设置路由4.1.1

我的路线定义如下:

基本上,我想设置路由,以便对未定义路由的页面的任何请求都会发送到{NotFound}组件。

如何做到这一点?上面的解决方案在请求页面时同时呈现Login和组件。NotFound/login

亲切的问候

0 投票
2 回答
423 浏览

reactjs - react routing - 渲染错误(单页应用)

您好我正在学习反应并尝试创建 SPA,但未呈现内部页面。

仅渲染,不渲染内部组件,如 &

在此处输入图像描述

无法找到确切的问题

我尝试了多种路由路径组合,例如

我的完整代码

来自 package.json 的组件版本

0 投票
7 回答
113034 浏览

javascript - 未捕获的类型错误:无法读取未定义的属性“推送”(React-Router-Dom)

我有一个带有旋转幻灯片的仪表板,每个幻灯片在Bldgs中都有一个相应的选项卡。两者都是我Dashboard.jsBldgs.js孩子App.js

当用户单击特定幻灯片ADashboard.jsDashboard需要告知App.js以便App可以告知当它路由到时显示Bldgs.js选项卡。ABldgs

相信我将正确的索引值从Dashboardup 到Appdown 传递到Bldgs. 但是,我的App.js文件中出现了一个错误,说明:

Uncaught TypeError: Cannot read property 'push' of undefined

在我开始将handleClick()函数传递给Dashboard组件之前,我的代码运行良好。

索引.js

应用程序.js

仪表板.js

Bldgs.js

0 投票
3 回答
2241 浏览

reactjs - React-Router v4 共享布局重新渲染

我知道以前有人问过这个问题,但我一直对此有疑问。

我遇到的问题是,当我使用类似页面布局的组件来包装我的路线时,更改路径时会重新呈现此页面布局。

在 react-router v3 中,我做了这样的事情:

移动路径时,这不会重新渲染MainLayout组件(通过在内部放置一些东西很容易检查MainLayout)。

现在,在 react-router v4中,我已经尝试了几种方法:

但是,我尝试过的所有解决方案似乎都重新渲染了MainLayout组件,基本上导致state重置为其初始值。


tldr; 如何创建一个在更改路径时不会重新渲染的包装组件react-router v4

0 投票
1 回答
344 浏览

reactjs - 如何使用 React Router 4 实现动画

我正在使用React Router v4,并且在实现页面之间的转换时遇到了一些困难。

我正在使用react-addons-css-transition-group使用转换的包来将动画显示为官方的 React Router 示例。

这是我的路由器:

现在,在UnderConstructionView我有一个简单的链接<Link to="/">home page</Link>,我的全部LoginView,但没有显示动画。

任何可以提供一些建议的人为什么它不起作用。我一定错过了什么,但我没有看到。

亲切的问候,

0 投票
1 回答
1003 浏览

react-router - React 路由器仅适用于 Link to,不适用于 URL 或刷新

不知道这里发生了什么。我已经设置了路由,当我转到我的第一页 localhost:8080/ 时,第一条路由按预期呈现。但是,如果我在 localhost:8080/store 中输入 url,则预期的路由会失败,并且我收到 404 找不到(甚至不会回退到我未找到的组件)。

但是,如果我设置一个链接并单击该链接,它将按预期呈现我的商店路线。

不应该/store呈现我的 StorePicker 组件,无论它是输入到 URL 中还是通过链接到元素选择?

应用程序.js

0 投票
0 回答
103 浏览

reactjs - 反应开关 v4 不起作用并抛出所有路线

我不知道如何解决我的问题。这是反应路由代码我怎么知道,switch 必须在我的 Base 中抛出一个路由组件,但他将所有路由都扔到 Router 中。我不知道如何使用这个对象(在图像中)并且必须获取 ReactCSSTransitionGroup 的密钥

https://www.dropbox.com/s/nzkf91delcvuo2f/%D0%91%D0%B5%D0%B7%D1%8B%D0%BC%D1%8F%D0%BD%D0%BD%D1%8B %D0%B9.png?dl=0

这是我的基类

0 投票
0 回答
616 浏览

reactjs - React Router 4 嵌套程序

我将从链接我所做的研究开始。

很抱歉,我似乎只能发布 2 个外部链接。


TL;博士

我发现了两种在 React Router 4 中进行嵌套的方法,每种方法都有其优点和缺点。

  • 第一的。这react-router是团队推荐的方式,优点是Route组件在它们加载的位置,但我发现很难跟踪路由。

  • 第二。以某种方式管理在一个地方完成所有路由,但是通过添加辅助组件有一些重复的代码和不必要的嵌套级别,我也不确定这样做是否可以。

所以这是我发现的两种嵌套方法。我在找:

  • 任何其他人发现做路由嵌套的方法。
  • 我应该如何筑巢?你认为哪种方式最好?

从这项研究中,我发现了两种嵌套方法,我正在使用react-router-dom.

1. React Router Docs 推荐方式

所以根据 React Router 的说法,在同一个文件上做所有的路由已经结束了,所以你现在的嵌套应该通过将我们的嵌套路由放在组件中来完成。


2. 将所有内容放在一个地方。

环顾四周,人们已经找到了在一个文件中完成所有路由的方法,就像我提到的一个链接一样,但它有一些缺点,例如,使用“未找到”页面需要使用Switch组件,这很好,但是如果你嵌套你会遇到一些问题,比如必须复制代码。例如,这将起作用。

2.1 一级嵌套

2.2 二级嵌套

在这里您可以看到如何使用辅助组件在第二级进行嵌套,您不能像在第一级那样进行嵌套,通过将类似的组件MainLayout放在内部,Switch因为当Switch到达它时,它将始终匹配路径,我们永远不会到达NotFound,这就是为什么我们需要使用辅助组件来进行嵌套,然后在该组件内部我们还必须添加一个NotFound.