Ant Design Pro:如何重定向路由保留查询参数

时间:2019-04-09 08:19:11

标签: reactjs ant-design-pro

我的用户将收到一个具有唯一键的链接,该链接会将他们定向到步骤表单。当它们进入步骤表单时,我想将它们自动重定向到router.config中的第一步。 也就是说,他们将收到一个类似于以下内容的网址:

https://example.com/register/user/sales?key=1234

,并且必须将它们重定向到:

https://example.com/register/user/sales/account?key=1234

但是,一旦我的用户被重定向,查询参数“?key = 1234”就会丢失。 我该如何解决?

我已经按照以下步骤设置了router.config:

export default [{
    path: '/register',
    component: '../layouts/RegisterLayout',
    routes: [{
        path: '/register',
        redirect: '/register/user'
    }, {
        path: '/register/user',
        name: 'user',
        component: './Register/user'
    }, {
        path: '/register/user/:division',
        name: 'user',
        component: './Register/User',
        hideChildrenInMenu: true,
        routes: [{
            path: '/register/user/:division',
            redirect: '/register/user/:division/account'
        }, {
            path: '/register/user/:division/account',
            name: 'account',
            component: './Register/User/Step1CreateAccount'
        }, {
            path: '/register/user/:division/details',
            name: 'details',
            component: './Register/User/Step2UserDetails'
        }]
  }]
}]

1 个答案:

答案 0 :(得分:0)

查询保留不能在此文件中完成,而不能在呈现链接的文件中完成。我相信ant-design-pro默认情况下使用的是UMI,因此您正在寻找类似的东西:

import Link from 'umi/link';

export default () => {
  <div>
    /* Normal use */
    <Link to="/list">Go to list page</Link>
    
    /* With query string */
    <Link to="/list?a=b">Go to list page</Link>

    /* Include child component */
    <Link to="/list?a=b"><button>Go to list page</button></Link>
  </div>
}

与此类似的操作应在SiderMenu或您拥有链接的其他任何地方进行。