ReactJS:如何以编程方式将用户重定向到另一个页面?

ReactJS:如何以编程方式将用户重定向到另一个页面?,reactjs,redux,react-router-dom,Reactjs,Redux,React Router Dom,我有一个基本的ReactJS 4.0.1应用程序,使用react路由器dom 5.0.1设置路由 我还有一个中间件,用于检查用户的会话时间是否已过期。从那里,我只想将用户重定向到登录页面 我真的只是想换一页。如果这是在.net中,我只会调用: 返回重定向到操作(“索引”,模型) 很简单 以前,为了更改不同组件中的内容,我在render部分中有一个if语句,它将通过返回以下内容重定向: 给用户。如果用户采取了触发组件内代码的操作,那么这是可行的,但我正在处理的逻辑是在中间件中 我试过了 hist

我有一个基本的ReactJS 4.0.1应用程序,使用react路由器dom 5.0.1设置路由

我还有一个中间件,用于检查用户的会话时间是否已过期。从那里,我只想将用户重定向到登录页面

我真的只是想换一页。如果这是在.net中,我只会调用:

返回重定向到操作(“索引”,模型)

很简单

以前,为了更改不同组件中的内容,我在render部分中有一个if语句,它将通过返回以下内容重定向:

给用户。如果用户采取了触发组件内代码的操作,那么这是可行的,但我正在处理的逻辑是在中间件中

我试过了 history.push、goto、location.push、store.push等。。。 我一点也做不到。
通过我的中间件,我可以从redux访问存储。我可以用它做什么?

你可以用
历史
对象。只需导出
history
对象并调用
history.push('some-page')
。我在这里做了一个演示

export const history=createBrowserHistory()

并将历史道具传递给路由器

在中间件文件中,只需调用
history.push('some-page')

另一种方法是使用库,如
react router redux