Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

213
Views
"react-router-dom": "^6.3.0", when I click the action the URI is changing but component is not mounting

Component not mounting when I click the action in header of react application but URI change is working fine.

I'm using

"react": "^18.0.0",
"react-dom": "^18.0.0",
"react-router-dom": "^6.3.0"

and my code is

Header.js

import { BrowserRouter as Router, Link } from "react-router-dom";

const Header= () => {
  return (
    <nav className="navbar">
    <Router>
        <ul className="navbar-items">
          <li className="navbar-items_item">
            <Link to="/">Home</Link>
          </li>
          <li className="navbar-items_item">
            <Link to="/about">About</Link>
          </li>
          <li className="navbar-items_item">
            <Link to="/user">User</Link>
          </li>
        </ul>
    </Router>
    </nav>
  );
};

export default Header;

App.js

import React, { Component } from "react";
import {
  BrowserRouter as Router,
  Routes,
  Route,
  Navigate,
} from "react-router-dom";
import Header from "./components/Header/index";
import Footer from "./components/Footer/index";
import "../styles/style.scss";

const Home = () => <div>Home</div>;
const About = () => <div>About</div>;
const User = () => <div>User</div>;

class App extends Component {
  render() {
    return (
      <div className="App">
        <header>
          <Header />
        </header>
        <main>
          <Router>
            <Routes>
              <Route exact path="/" element={<Home />} />
              <Route exact path="/about" element={<About />} />
              <Route exact path="/user" element={<User />} />
            </Routes>
          </Router>
        </main>
        <footer>
          <Footer />
        </footer>
      </div>
    );
  }
}

export default App;
about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

I included Header as well for wrapping Router tag.

Header.js

import { Link } from "react-router-dom";

const Header= () => {
  return (
    <nav className="navbar">
        <ul className="navbar-items">
          <li className="navbar-items_item">
            <Link to="/">Home</Link>
          </li>
          <li className="navbar-items_item">
            <Link to="/about">About</Link>
          </li>
          <li className="navbar-items_item">
            <Link to="/user">User</Link>
          </li>
        </ul>
      </nav>
  );
};

export default Header;

App.js

import React, { Component } from "react";
import { Routes, Route } from "react-router-dom";
import Header from "./components/Header/index";
import Footer from "./components/Footer/index";
import "../styles/style.scss";

const Home = () => <div>Home</div>;
const About = () => <div>About</div>;
const User = () => <div>User</div>;

class App extends Component {
  render() {
    return (
      <div className="App">
          <header>
            <Header />
          </header>
          <main>
            <Routes>
              <Route exact path="/" element={<Home />} />
              <Route exact path="/about" element={<About />} />
              <Route exact path="/user" element={<User />} />
            </Routes>
          </main>
        <footer>
          <Footer />
        </footer>
      </div>
    );
  }
}

export default App;

index.js

import { BrowserRouter as Router } from "react-router-dom";
import ReactDOM from "react-dom/client";
import App from "./modules/App";
import reportWebVitals from "./reportWebVitals";

const root = ReactDOM.createRoot(document.getElementById("root"));

root.render(
  <React.StrictMode>
    <Router>
      <App />
    </Router>
  </React.StrictMode>
);

reportWebVitals();
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!