From ba6f9b1698cf0576df71d7715c6913632fca205b Mon Sep 17 00:00:00 2001 From: MapleLeaf <19603573+itsMapleLeaf@users.noreply.github.com> Date: Fri, 31 Dec 2021 12:58:03 -0600 Subject: [PATCH] set up routing --- packages/docs-new/package.json | 4 +++- packages/docs-new/src/document-page.tsx | 7 +++++++ packages/docs-new/src/entry.client.tsx | 11 ++++++++++- packages/docs-new/src/entry.server.tsx | 10 +++++++++- packages/docs-new/src/landing-page.tsx | 7 +++++++ packages/docs-new/src/root.tsx | 9 ++------- packages/docs-new/src/routes.tsx | 20 ++++++++++++++++++++ pnpm-lock.yaml | 4 ++++ 8 files changed, 62 insertions(+), 10 deletions(-) create mode 100644 packages/docs-new/src/document-page.tsx create mode 100644 packages/docs-new/src/landing-page.tsx create mode 100644 packages/docs-new/src/routes.tsx diff --git a/packages/docs-new/package.json b/packages/docs-new/package.json index 7594714..4af8a7a 100644 --- a/packages/docs-new/package.json +++ b/packages/docs-new/package.json @@ -11,7 +11,9 @@ "express": "^4.17.2", "reacord": "workspace:*", "react": "^17.0.2", - "react-dom": "^17.0.2" + "react-dom": "^17.0.2", + "react-router": "^6.2.1", + "react-router-dom": "^6.2.1" }, "devDependencies": { "@types/compression": "^1.7.2", diff --git a/packages/docs-new/src/document-page.tsx b/packages/docs-new/src/document-page.tsx new file mode 100644 index 0000000..281ce09 --- /dev/null +++ b/packages/docs-new/src/document-page.tsx @@ -0,0 +1,7 @@ +export function DocumentPage() { + return ( + <> +

Docs

+ + ) +} diff --git a/packages/docs-new/src/entry.client.tsx b/packages/docs-new/src/entry.client.tsx index 981a453..2e604f3 100644 --- a/packages/docs-new/src/entry.client.tsx +++ b/packages/docs-new/src/entry.client.tsx @@ -1,4 +1,13 @@ import { hydrate } from "react-dom" +import { BrowserRouter } from "react-router-dom" import { Root } from "./root" +import { AppRoutes } from "./routes" -hydrate(, document) +hydrate( + + + + + , + document, +) diff --git a/packages/docs-new/src/entry.server.tsx b/packages/docs-new/src/entry.server.tsx index 2d539c0..88a03a9 100644 --- a/packages/docs-new/src/entry.server.tsx +++ b/packages/docs-new/src/entry.server.tsx @@ -1,5 +1,13 @@ +import { StaticRouter } from "react-router-dom/server" import { Root } from "./root" +import { AppRoutes } from "./routes" export async function render(url: string) { - return + return ( + + + + + + ) } diff --git a/packages/docs-new/src/landing-page.tsx b/packages/docs-new/src/landing-page.tsx new file mode 100644 index 0000000..82ef0ff --- /dev/null +++ b/packages/docs-new/src/landing-page.tsx @@ -0,0 +1,7 @@ +export function LandingPage() { + return ( + <> +

Landing

+ + ) +} diff --git a/packages/docs-new/src/root.tsx b/packages/docs-new/src/root.tsx index 4cd0302..37b84ed 100644 --- a/packages/docs-new/src/root.tsx +++ b/packages/docs-new/src/root.tsx @@ -1,6 +1,4 @@ -import { Counter } from "./counter" - -export function Root() { +export function Root({ children }: { children: React.ReactNode }) { return ( @@ -16,10 +14,7 @@ export function Root() { } /> - -

hi

- - + {children} ) } diff --git a/packages/docs-new/src/routes.tsx b/packages/docs-new/src/routes.tsx new file mode 100644 index 0000000..930e4b7 --- /dev/null +++ b/packages/docs-new/src/routes.tsx @@ -0,0 +1,20 @@ +import { Route, Routes } from "react-router" +import { Link } from "react-router-dom" +import { DocumentPage } from "./document-page" +import { LandingPage } from "./landing-page" + +export function AppRoutes() { + return ( + <> + + + } /> + } /> + + + ) +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 775fdca..3df7fa5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -124,6 +124,8 @@ importers: reacord: workspace:* react: ^17.0.2 react-dom: ^17.0.2 + react-router: ^6.2.1 + react-router-dom: ^6.2.1 typescript: ^4.5.4 vite: ^2.7.10 dependencies: @@ -131,6 +133,8 @@ importers: reacord: link:../reacord react: 17.0.2 react-dom: 17.0.2_react@17.0.2 + react-router: 6.2.1_react@17.0.2 + react-router-dom: 6.2.1_react-dom@17.0.2+react@17.0.2 devDependencies: '@types/compression': 1.7.2 '@types/express': 4.17.13