Handling Error Page in React JS 2025

⚠️ Handling Error Pages in React JS 2025 (React Router v6.4+)

With React Router v6.4+, error handling has become more intuitive using the errorElement prop in routes. You can now define a fallback error UI per route or globally.

🔧 Step 1: Create an Error Component


import { useRouteError } from 'react-router-dom';

export default function ErrorPage() {
  const error = useRouteError();
  console.error(error);

  return (
    

Oops!

Something went wrong.

{error.statusText || error.message}

); }

🛠️ Step 2: Define It in Your Route (Router Setup)


import { createBrowserRouter, RouterProvider } from 'react-router-dom';
import AppLayout from './AppLayout';
import Home from './pages/Home';
import About from './pages/About';
import ErrorPage from './components/ErrorPage';

const router = createBrowserRouter([
  {
    path: '/',
    element: ,
    errorElement: , // 👈 Global error handler
    children: [
      { index: true, element:  },
      { path: 'about', element:  }
    ]
  }
]);

function App() {
  return ;
}

  

✅ Bonus: Catching 404 (Not Found)

To handle unknown routes, add a wildcard route at the bottom:


{
  path: '*',
  element:  // Or a custom 404 page
}

  

📌 Summary

  • Use errorElement in your route to catch errors.
  • useRouteError() gives access to the thrown error.
  • Customize messages for 404 or unexpected issues.