#Dynamic routing

5 messages · Page 1 of 1 (latest)

raw escarp
#

I'm using nextjs app router. I have routes /learn and /learn/[threadID] where if the threadID is provided it'll open the chat modal on screen. The issue is I have a duplicate page.tsx in both learn/ and threadID/.

└── learn/
    ├── threadID/
    │   └── page.tsx <- duplicate content
    ├── page.tsx
    └── layout.tsx```
So far, I've thought of putting all page content *except* the chat modal in `layout.tsx`, and the closed modal in `page.tsx` in `/learn` and the open modal in `page.tsx` in `learn/[threadID]/`. This just seems a bit odd though. Any ideas please?
wet kestrelBOT
#

🔎 This post has been indexed in our web forum and will be seen by search engines so other users can find it outside Discord

🕵️ Your user profile is private by default and won't be visible to users outside Discord, if you want to be visible in the web forum you can add the "Public Profile" role in id:customize

✅ You can mark a message as the answer for your post with Right click -> Apps -> Mark Solution
(if you don't see the option, try refreshing Discord with Ctrl + R)

slim dawn
#
// learn/[[...threadID]]/page.tsx
import YourModalComponent from "./YourModalComponent";

export default function Page({ params }: { params: { threadID?: string[] } }) {
  if (params.threadID) {
    return <YourModalComponent />;
  } else return <h1>Your Page</h1>;
}
#
└── learn/
    └── [[...threadID]]/
        └── page.tsx