我正在使用React(15.3.0)、Redux(3.5.2)和React路由器(2.6.1)构建一个web应用程序。我包括了我在一些相关文章中看到的版本,但它们引用了这些库的旧版本。
我有一些状态,我想坚持在URL上,以便用户可以深入链接到它。通过深度链接,我的意思是用户可以直接链接到页面的状态。我在我的应用程序中有各种页面,每个页面都有一个单独的减速器,每个页面的状态应该在页面之间保持不变。
我读过丹·阿布拉莫夫推荐的方法:如何同步Redux状态和url哈希标签参数,除了在页面之间保持状态之外,这看起来还可以。
一个示例场景:
>
用户在第一页着陆:/page1
用户与页面交互,导致状态保存在URL中:/page1?状态={...}
用户转到第2页:/page2
用户与第2页交互:/page2?状态={…}
用户链接到第1页,希望在离开该页时看到该页。问题如何从第1页恢复状态?
我已经看过react router redux,但我不知道它是否符合我的需要?
对这个问题有共同的解决方法吗?如果是,是什么?如果没有,你能建议一种方法吗?
我相信这个问题的答案不止一个;您只需要选择一个并实现它。
如果是我,我会这样做:
/page1
,请使用存储状态(我假设状态需要同步到服务器才能存储/恢复)
/page1?状态={…}
,a)将URL状态合并到存储/恢复状态,或b)跳过恢复并直接使用URL
我甚至会更进一步,不将状态同步到url,因为这似乎是白费力气(除非用户依赖于为页面添加书签)。只需呈现一个名为“共享此URL”的React组件,并让它呈现一个带有适当查询参数的URL。
在我的React项目中,我有: 没有标题的登录组件 问题:我应该如何构建我的路由器从登录页面开始,当我点击登录时,路由器会把我带到仪表板?
我有一个简单的(目前)应用程序,使用react router和redux,我想为它添加国际化功能。 我已经安装了npm包,并且能够安装和运行提供的示例。我已经将适当的导入添加到我自己的应用程序中,并将国际化标签添加到根渲染方法中。 当我将I18nextProvider标记添加到render方法时,我得到了错误 找不到模块“react” 这并不是特别有用,尤其是因为如果我删除标签,react应用程序
来自导航的代码片段。js 类导航扩展组件{render(){return( ### 使用路由器导出默认值(导航) 我渲染这个组件从App.js 使用路由器导出默认值(应用程序) 下面是我的发票。js 下面是我的index.js 有人能帮我显示发票组件吗。我还没有反应过来。
使用redux和反应路由器,我想访问路由指定的组件以外的组件上的路由参数。 我已经对react-router、redux和react-router-redux进行了如下设置,我想从我的redux存储访问reportId参数。 我已经尝试连接react-redux路由器来存储路由状态,但是我发现除了活动路由的完整路径之外,redux内部没有任何有用的存储。这让我可以选择从redux中的路径解析出re
在我的情况下,当使用从react-redux时,反应路由器不会将我的反应组件视为有效组件。并且有一个警告:失败proType:无效prop提供给 Main.js
我一直在使用react-router-redux,它允许我的位置很好地存储在状态中,并允许我使用react-router来定义路由,并在路由之间进行链接。 一个问题似乎是当我需要使用