SolidJSS
SolidJSโ€ข3y agoโ€ข
2 replies
Martnart

RouteDataArgs Type Error for nested RouteData

// Root
export function routeData(args: RouteDataArgs) {
  return () => 'foo'
}

// Child
export function routeData(args: RouteDataArgs<typeof RootRouteData>) {
  return args.data() ? args.data() : () => 'bar'
}

// Grandchild
export function routeData(args: RouteDataArgs<typeof ChildRouteData>) {
  return args.data() // <= TypeError. An Argument for "args" was not provided.
}

Wha'ts happening here? I tried to reproduce this in Stackblitz and couldn't. I'm guessing some TS config option maybe as type inference seems a bit messed up.
https://stackblitz.com/edit/solid-ssr-vite-pcbdkr?file=src%2Froutes%2Findex.tsx
However, locally, routeData return types are accurate and I get above error for this kind of structure.
Was this page helpful?