Defining Routes
Routes are defined in src/js/routes/index.js file and exported, Catalyst uses react-router-v6 based routing, so routes have to be defined accordingly.
For data fetching inside each routes, clientFetcher and serverFetcher functions have to be defined, they are explained in Data Fetching.
Note: Slash should not be prefixed while defining child route. For example: "prescription/new"
Interactive Routing Demo
Try the interactive demo below to see how different routes work in Catalyst:
Dynamic Routing Examples
This example demonstrates Catalyst's routing capabilities including dynamic parameters and navigation.
Current Route
Path: /
Component: HomePage
Component Content
Welcome to Home Page
This is the main landing page of our application.
Code Example
Route Definition (src/js/routes/index.js)
const routes = [
{
path: "/",
index: true,
component: "HomePage",
},
{
path: "/products",
component: "Products",
},
{
path: "/user/:id",
component: "UserPage",
},
{
path: "/about",
component: "About",
},
]Route Configuration
// src/js/routes/index.js
import { createBrowserRouter } from '@tata1mg/router'
import HomePage from '../pages/Home'
import About from '../pages/About'
import Products from '../pages/Products'
import UserPage from '../pages/User'
const routes = [
{
path: "/",
index: true,
element: <HomePage />
},
{
path: "/products",
element: <Products />
},
{
path: "/user/:id",
element: <UserPage />
},
{
path: "/about",
element: <About />
}
]
export default routes