1

我的用户将收到一个链接,其中包含他们独有的密钥,可将他们引导至步骤表单。当他们进入步骤表单时,我想将他们自动重定向到 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'
        }]
  }]
}]
4

1 回答 1

1

查询保存不能在这个文件中完成,而是在呈现链接的文件中。我相信 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 或其他任何有链接的地方完成。

于 2019-04-09T08:27:50.123 回答