TanStackT
TanStack2y ago
2 replies
good-rose

Throw notFound() gets me a blank page

For example, whenever this code triggers a notFound, i get a blank page.
export const Route = createFileRoute("/_authenticated/admin/")({
  beforeLoad: async () => {
    const user = await getUser();
    if (!user) {
      throw redirect({ to: "/login" });
    }

    const isUserAdmin = user.roles.some((role) => ADMIN_ROLES.includes(role));
    if (!isUserAdmin) {
      throw notFound();
    }
  },
  errorComponent: ({ error }) => <ErrorComponent error={error} />,
});

This is my router code:
import { ErrorComponent, createRouter } from "@tanstack/react-router";
import { routeTree } from "../routeTree.gen";
import NotFoundPage from "@/components/NotFoundPage";

// Set up a Router instance
const router = createRouter({
  routeTree,
  defaultPreload: "intent",
  defaultNotFoundComponent: () => <NotFoundPage />,
  defaultErrorComponent: ({ error }) => <ErrorComponent error={error} />,
});

// Register things for typesafety
declare module "@tanstack/react-router" {
  interface Register {
    router: typeof router;
  }
}

export default router;


The not found page is just a bunch of text for the 404 error
Was this page helpful?