很可能您还没有启用React-Router提供的“浏览器历史记录”功能(我上次检查时默认为“哈希历史记录”)。
尝试将其添加到主文件(React应用程序的客户端入口点):
import { render } from 'react-dom'
import { Router, browserHistory } from 'react-router'
import routes from './routes'
/* The rest of your other code... */
render(
<Router history={browserHistory} routes={routes} />,
document.getElementById('app')
)
看看你是否还能得到那个问题。
我已经阅读了很多关于这个主题的文档和软件问题,我用了很多方法来做这些,但是没有一个能以我需要的方式工作。我想我错过了一些重要的事情。很难就我使用的每个导航方法提供详细和相关的代码,我会试试。 这里有一些指间信息。我有react redux应用程序,我需要从服务器获取状态并根据此状态重定向到页面。 my App类渲染方法的简化版本: 在index.js文件中用BrowserRouter包装的应用程序
问题内容: 完成一些验证后,如何移动到新页面?我有这样的事情: 我想将用户发送到另一条路线。我看过Redirect,但似乎它将从历史记录中删除我不想要的当前页面。 问题答案: 您正在使用react-router v4,因此您需要在组件中使用withRouter来访问历史对象的属性,然后使用它来动态更改路由。 withRouter : 您可以通过withRouter高阶组件访问历史对象的属性和最接近
我迫不及待地开始使用最新的alpha版本的v4。全新的
问题内容: 我似乎找不到不使用来使用react- router更新查询参数的方法。似乎没有注册查询参数,而且似乎也不能将查询对象或任何内容作为第二个参数传递。 如何从更改URL ,以在反应路由器没有使用? 而且是一个真正的函数来监听查询变化的唯一途径?为什么没有自动检测到查询更改并对参数更改做出反应? 问题答案: 在中,您可以指定查询参数。例如, 要么 您可以查看此存储库以获取有关使用的其他示例
问题内容: 通过使用我可以使用元素创建由React Router本机处理的链接。 我在内部看到它的呼唤。 我想导航。不是来自链接,而是来自下拉菜单(例如)。如何在代码中执行此操作?什么啊 我看到了mixin,但是如果没有,我可以这样做吗? 问题答案: 带有钩子的React Router v5.1.0 如果您使用React> 16.8.0和功能组件,则React Router> 5.1.0中会有一个
问题内容: 我刚刚从v3 替换为v4。 但是我不确定如何以编程方式在的成员函数中进行导航。即在功能上我想导航到处理一些数据后。我曾经通过以下方式做到这一点: 但是我在v4中找不到这样的接口。 如何使用v4导航? 问题答案: 如果您定位到浏览器环境,则需要使用package而不是。他们按照相同的方法作出反应那样,以核心分开,( )和特定于平台的代码,( ,用细微的差别,你并不需要安装两个独立的包),