diff --git a/ts-router/src/app.tsx b/ts-router/src/app.tsx index e87a903..4567a32 100644 --- a/ts-router/src/app.tsx +++ b/ts-router/src/app.tsx @@ -2,7 +2,7 @@ import { Component } from "solid-js"; import { Link, Route, useRouter } from "solid-app-router"; const App: Component = () => { - const router = useRouter(); + const [router] = useRouter(); return ( <> diff --git a/ts-router/src/pages/about.data.ts b/ts-router/src/pages/about.data.ts index f5438f9..528a3e3 100644 --- a/ts-router/src/pages/about.data.ts +++ b/ts-router/src/pages/about.data.ts @@ -1,10 +1,9 @@ import { DataFn } from "solid-app-router"; -import { mergeProps } from "solid-js"; -const HomeData: DataFn = (props) => { - return mergeProps(props, { +const AboutData: DataFn = () => { + return { name: "about", - }); + }; }; -export default HomeData; +export default AboutData; diff --git a/ts-router/src/pages/about.tsx b/ts-router/src/pages/about.tsx index 1af565e..771c86d 100644 --- a/ts-router/src/pages/about.tsx +++ b/ts-router/src/pages/about.tsx @@ -1,3 +1,5 @@ +import { Suspense } from "solid-js"; + export default function About(props) { return (
diff --git a/ts-router/src/routes.ts b/ts-router/src/routes.ts index ed6e6c5..d1a3d3d 100644 --- a/ts-router/src/routes.ts +++ b/ts-router/src/routes.ts @@ -1,26 +1,19 @@ +import { lazy } from "solid-js"; import { RouteDefinition } from "solid-app-router"; -import { lazy, Component } from "solid-js"; -const pages = import.meta.glob("./pages/**/*.tsx"); -const pagesData = import.meta.globEager("./pages/**/*.data.ts"); - -const autoRoutes = Object.keys(pages).map((path) => { - const name = path.match(/\.\/pages(.*)\.[tj]sx$/)[1].toLowerCase(); - const Comp = pages[path] as () => Promise<{ default: Component }>; - - const routePath = ["/home", "/index"].includes(name) ? "/" : name; - - const data = pagesData[path.replace("tsx", "data.ts")] || {}; - - return { - path: routePath, - component: lazy(Comp), - data: data.default, - } as RouteDefinition; -}); +import Home from "./pages/home"; +import AboutData from "./pages/about.data"; export const routes: RouteDefinition[] = [ - ...autoRoutes, + { + path: "/", + component: Home, + }, + { + path: "/about", + component: lazy(() => import("./pages/about")), + data: AboutData, + }, { path: "**", component: lazy(() => import("./errors/404")),