问题标签 [react-router-redux]

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

javascript - react-router在提供带有路径的url时忽略嵌套路由

我正在玩弄reactredux尝试将一个基本的应用程序与react-routes. 目前,我已经设法将以下适用于页面的内容放在一起WrapperHome但是如果我转到 localhost:8080/apps,“应用程序”页面似乎不会加载。我每次都收到404。

有什么想法我可能在这里出错了吗?

控制台中没有错误或警告,我尝试在网上查看几个示例,但似乎没有一个与我所拥有的特别不同,

index.js

路线/路线.js

存储/configureStore.js

减速器/index.js

0 投票
6 回答
48884 浏览

react-router - 如何同步 Redux 状态和 url 查询参数

我有一个带有搜索面板的网页。搜索面板有几个输入字段:id、size、...

我想要的是当用户设置搜索值(例如:id=123 和 size=45)并按下搜索按钮时:

  1. Redux reducer 中的 searchState 应该使用新的搜索值更新(id=123 和 size=45)
  2. URL 应更改为“ http://mydomain/home?id=123&size=45

另一方面,如果用户将 URL 更改为http://mydomain/home?id=111&size=22则:

  1. reducer 中的 searchState 应使用新的搜索值(id=111 和 size=22)进行更改
  2. UI 搜索面板输入应更新为新值(id=111 和 size=22)

如何达到目标?我应该使用什么路由器(react-router、redux-router、react-router-redux 等)?

0 投票
1 回答
23304 浏览

reactjs - react-router:如何在 onEnter 处理程序中获取上一个路由?

当用户在处理程序中点击新路径/路径时,我试图找到一种方法来读取先前的路径/路径onEnter

我有一个结构如下的 React 路由器:

函数 ,onEnterHandler看起来像这样:

我似乎无法找到一种方法来读取用户之前的路线路径......我需要在新路线和以前的路线之间进行比较。非常感谢任何有关如何解决此问题的意见。:)

干杯!

0 投票
2 回答
2344 浏览

reactjs - react-router-redux 和 redux-immutable:你不能改变; 它将被忽略

我正在尝试将 react-router-redux 与 redux-immutable 一起使用,并且在@@router/LOCATION_CHANGE触发操作时出现错误:

我一直在网上阅读这个问题似乎是由热加载程序引起的,但我没有使用它。

这是代码的样子:

路线

根组件

路由器减速器

主要的

您对导致此问题的原因有任何想法吗?

0 投票
2 回答
43310 浏览

javascript - 如何同步 Redux 状态和 url 哈希标签参数

我们有一个讲座和章节列表,用户可以在其中选择和取消选择它们。这两个列表存储在一个 redux 存储中。现在我们想要在 url 的 hash 标记中保留选定的讲座 slug 和章节 slug 的表示,并且对 url 的任何更改也应该更改存储(双向同步)。

使用react-router甚至react-router-redux的最佳解决方案是什么?

我们真的找不到一些好的例子,其中 react 路由器仅用于维护 url 的哈希标记,并且也只更新一个组件。

0 投票
2 回答
4523 浏览

reactjs - Redux 应用程序状态通过 url -> 查询参数

使用https://github.com/reactjs/react-router-redux/

如果我想根据 url 查询参数重新加载应用程序 (Redux) 状态是通过获取state.routing.locationBeforeTransitions.query属性来做到这一点的正确方法吗?

在此处输入图像描述

它有效......只是想知道这是否是正确的方法。

0 投票
1 回答
3459 浏览

reactjs - React/Redux 在哪里保存状态

我无法理解一些 ReactJS 和 Redux 原则,

在 Redux 中,我们有一个 store 和一组 reduceres,它们给出了你的最终状态(这部分我得到了)。

组件从其父组件接收道具,在 Redux 的情况下,它通过 Provider 组件传递完整状态。

现在,让我们假设这个用例,我的应用程序状态是这样的:

我正在构建一个容器(页面),以便能够编辑用户配置文件、此处的问题以及遇到问题的地方,我还希望此页面能够处理任意用户编辑(以防管理员正在编辑帐户)。

我正在使用这样的 redux-router 渲染我的页面:

所以阅读文档,我假设我的道具将有一个用户 ID,如果存在,它将覆盖我的默认用户。

问题:这种方法正确吗?路由处理?

如果我在路线上传递了一个用户 ID 参数,我该如何继续加载用户信息以及在哪里?我看到它的方式,我需要调度一个动作,但我不确定在哪里设置 state ,如果在商店或组件上。

另外,我将在哪里加载我的用户信息?(想到构造函数)......还是应该在 WillMount/WillReceiveProps 中?

谢谢你。

0 投票
2 回答
4530 浏览

reactjs - 如何调度一个动作来重新加载当前路由?

我正在React使用React RouterRedux。我希望能够从组件调度一个动作,最终重新加载当前路由。这可能吗 ?

我会使用browserHistory.push,但问题是我首先必须知道组件内的当前路由,我不知道,至少在没有向组件添加一些麻烦的黑客攻击的情况下不会。

非常感谢任何帮助!

0 投票
0 回答
1513 浏览

reactjs - 使用 React、React-Redux-Router 和 Passport.js 进行身份验证

我使用 Express 作为后端,使用本地护照进行用户身份验证。该状态有一个带有“isAuthenticated”字段的用户对象,用于检查用户是否已通过身份验证。用户单击登录按钮后,我发送登录操作,该操作将发布请求发送到处理身份验证逻辑的服务器并将“isAuthenticated”设置为 true。如果用户已登录,react-redux-router 会分派 'push' 来更改位置。

然而,这些似乎都不起作用。当我单击登录按钮时,页面只是重新加载。我看到从记录器中间件发送的动作片刻,但整个应用程序只是重新加载。有没有办法让它工作?

另外,我看到了一个使用服务器端渲染来保存状态的示例,这样当页面刷新时,'isAuthenticated' 仍然保持真实。不使用此方法或 cookie 是否可以实现相同的目标?是否有一种方法可以将“req.isAuthenticated”发送到客户端,类似于模板引擎如何将对象从服务器端传递到客户端?

编辑:所以 passport.js 在 chrome 上运行良好显然不是 Safari,但我仍然想知道处理第二个问题的最佳方法是什么。

0 投票
1 回答
653 浏览

reactjs - React Router - 从查询字符串构建状态

React 新手,构建一个搜索应用程序,其中基于输入的搜索词和选择的后续过滤器构建 URL。我正在根据搜索词和所做的选择更新查询字符串,而不是路径。(例如 /?term=movies&selections=action,adventure) 我通过 Action Creators 中的 browserHistory.push() 手动将这些更改推送到查询字符串。我不确定要遵循正确的模式来响应这些更新来补充应用程序状态。

我可以在第一次渲染时检查 componentWillMount() 中的查询字符串参数以渲染初始状态,并且效果很好,但是当使用浏览器的后退/前进按钮时,我不确定重建状态的最佳模式。

我在 React 之上使用以下模块: react-redux react-router react-router-redux

建议感谢感谢。