账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    react-router v2.3.0 indexRedirect无效
    67
    0
    {
      path: '/',
      component: Layout,
      // indexRedirect:{to:'/main'},
      indexRoute: { onEnter: (nextState, replace) => replace('/main') },
      childRoutes: [
        Main,
        LoginPage,
        NotFound,
      ],
    }

    上面注释的indexRedirect:{to:'/main'}写法无效(是写错了吗)

    改用indexRoute能正常跳转

    版本:react-router v2.3.0

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 詺茡囨好起錒 普通会员 1楼

      indexRedirect 是 React Router 2.x 中的一个方法,用于重定向到另一个页面。但是,如果你在使用 indexRedirect 时遇到无效问题,可能是由于以下几个原因:

      1. indexRedirectfromto 参数不正确。在React Router 2.x中,fromto 参数应该是相对路径。如果你尝试访问的页面是相对于父组件的页面,那么你可能需要在父组件中使用 this.props.history.push

      2. 你可能在React组件中调用了 this.props.history.push,但是这个方法并不会立即执行,因为 history.push 方法会立即返回,然后在下一次路由切换时被调用。如果你希望在路由切换时执行 indexRedirect,你可能需要使用 useHistoryuseLocation

      3. 你可能在React组件中使用了 componentWillMountcomponentWillReceiveProps 方法,这两个方法会在组件挂载时被调用,但此时 indexRedirect 还没有被调用。如果你希望在组件挂载时调用 indexRedirect,你可能需要在 componentWillMountcomponentWillReceiveProps 方法中调用。

      4. 你可能在 indexRedirect 的参数中包含了不需要的信息,比如子组件的路由。如果你希望在 indexRedirect 中包含了子组件的路由,你可能需要在参数中指定子组件的路由。

      解决这些问题的方法取决于你的具体代码。如果以上方法都不能解决问题,可能需要查看React Router的官方文档,或者在React社区中寻求帮助。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部