With an entry like this:
import { DataBrowserRouter, Route } from "react-router-dom";
import Teams, {
loader as teamLoader,
} from "./routes/teams";
ReactDOM.render(
<DataBrowserRouter>
<Route
element={<Teams />}
path="/teams"
loader={teamsLoader}
/>
</DataBrowserRouter>,
root
);
And routes modules that look like this, where loaders return responses:
import { json } from "react-router-dom";
export function loader() {
const teams = await someIsomorphicDatabase
.from("teams")
.select("*");
return json(teams);
}
export default function Teams() {
const data = useLoaderData();
// ...
}
You can quite literally copy/paste them into a Remix app.