React-Router:无法从 / 重定向到 /home

Posted

技术标签:

【中文标题】React-Router:无法从 / 重定向到 /home【英文标题】:React-Router : Unable to redirect from / to /home 【发布时间】:2016-12-19 04:42:24 【问题描述】:

我在我的应用程序中使用 react-router 进行路由。这是路由器配置。

let routes = 
    path : "/",
    onEnter : (,replace) => replace('/home'),
    childRoutes : [
        
            path : "home",
            component : App,
            indexRoute : component : Landing,
            childRoutes : [ ]
        
    ]

当我尝试加载应用程序时,我得到RangeError: Maximum call stack size exceeded。据我了解,这是因为“/”中的 onEnter 每次我尝试击中任何东西时都会运行。有没有一种方法只在我点击完全匹配“/”而不是每次都执行时才执行?

【问题讨论】:

【参考方案1】:

使用indexRoute 重定向到本地路由(参见index redirects 最后一个示例):

let routes = 
    path : "/",
    indexRoute:  onEnter: (nextState, replace) => replace('/home') ,
    childRoutes : [
        
            path : "home",
            component : App,
            indexRoute : component : Landing,
            childRoutes : [ ]
        
    ]

【讨论】:

以上是关于React-Router:无法从 / 重定向到 /home的主要内容,如果未能解决你的问题,请参考以下文章

React-Router:将我的 url 从 hashHistory 重定向到 browserHistory

无法使用 react-router 4 以编程方式重定向

使用 React-Router 4 和 Redux-Promise 重定向用户

从共享组件库导出`react-router`重定向

重定向到错误页面 ReactJS 和 react-router

如何使用 react-router 重定向到另一条路由?