Redirect 路由重定向
可以为指定路由设置重定向目标,该目标可以设置为固定目标,也可以设置为一个 Resolvable 的目标(即通过类似 useResolves 的机制动态计算得到):
固定目标
例如对于以下路由配置:
path: "${APP.homepage}"
exact: true
redirect: "${APP.homepage}/product"
当用户访问该应用首页时,将自动重定向到 /product 子页面去。
Resolvable 目标
又如以下使用 Resolvable 目标的路由配置:
path: "${APP.homepage}"
exact: true
redirect:
useProvider: "your-provider"
transform:
redirect: "${APP.homepage}/product/@{productId}"
当用户访问该应用首页时,系统将调用 your-provider 的 resolve 方法,将计算得到的 productId 拼装成 /product/@{productId} 作为跳转目标。
注意:当使用 Resolvable 目标时,应始终返回一个 { redirect?: string } 的对象,当返回的 redirect 属性为 falsy 值时,系统将忽略重定向,继续执行子路由的匹配或构件列表的渲染。
变更历史
| 组件 | 版本 | 变更 |
|---|---|---|
| brick_next | 1.14.1 | 开始支持路由重定向 |