umijs/plugins

👑 [需求] plugin-layout `childrenRender` 传入 `route` 路由信息?

yunsii opened this issue · 2 comments

🥰 需求描述

当前 childrenRender 入参只有 dom,当 childrenRender 需要使用路由相关信息时好像没办法直接拿到?
比如我此前基于 Pro V4 实现的页面标签页功能,需要使用 route 路由信息,通过修改生成的代码传入 route 是可以的。

🧐 解决方案

{
  // 1. 直接添加
  childrenRender?: (dom: JSX.Element, route: Route) => React.ReactNode,

  // 2. 考虑扩展性
  childrenRender?: (dom: JSX.Element, data: { route: Route} ) => React.ReactNode,
}

另,如果使用 @umijs/preset-react 版本不得低于 1.8.28,详见此更新