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

时间:2016-08-12 08:28:56

标签: reactjs react-router router

我在我的应用程序中使用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 个答案:

答案 0 :(得分:3)

使用indexRoute重定向到主路由(请参阅index redirects上一个示例):

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