Interface RouteStatic<P, R>

interface RouteStatic<
    P = any,
    R extends Record<string, any> = Record<string, any>,
> {
    beforeRouter?: (props: P) => Promise<void | R>;
}

Type Parameters

  • P = any
  • R extends Record<string, any> = Record<string, any>

Properties

Properties

beforeRouter?: (props: P) => Promise<void | R>
  • 你可以在当前路由的私有 beforeRouter 钩子中准备必要的数据
  • 这么做的好处是可以在页面正式渲染前将所有数据准备就绪,从而避免Loading闪烁/页面抖动
  • 你可以通过 props.dispatchBeforeRouter 来重新触发 beforeRouter 以刷新准备数据,同时这会触发一次组件重渲染
  • beforeRouter 的返回值可以是一个对象,其中的所有字段会平铺到 props 中,返回的类型需要手动定义

Type declaration

    • (props: P): Promise<void | R>
    • Parameters

      • props: P

        当前路由的 props

      Returns Promise<void | R>

      必须返回一个 Promise