简体   繁体   English

react-router-dom 没有加载 app.js 中的第四个元素

[英]react-router-dom not loading the fourth element in app.js

When I try to run the following code, only the header element shows on the main page or only the home element, but not together.当我尝试运行以下代码时,主页上仅显示标题元素或仅显示主页元素,但不一起显示。

import './App.css';
import Header from './Header'
import Home from './Home'
import Checkout from "./Checkout"
import { BrowserRouter as Router, Routes, Route }
from "react-router-dom";
function App() {
  return (
    // BEM
    <Router>
    <div className='app'>
      <Routes>
        <Route path="/checkout" element={<Header />}/>
        <Route path="/checkout" element={<Checkout />}/>
        
      </Routes>
      <Routes>
        <Route exact path="/" element={<Home />}/>
        <Route path="/" element={<Header />}/>
      </Routes>
      
    </div>
    </Router>
  );
}

export default App;

If you wish for Header to be always shown, just take it out of Router component.如果您希望始终显示Header ,只需将其从Router组件中取出。 Stackblitz堆栈闪电战

import * as React from 'react';
import { BrowserRouter as Router, Link, Route, Routes } from 'react-router-dom';
import './style.css';

export default function App() {
  return (
    <div>
      <Header />

      <Router>
        <Routes>
          <Route path="/checkout" element={<Checkout />} />
          <Route path="/" element={<Home />} />
        </Routes>
      </Router>
    </div>
  );
}

function Header() {
  return <h1>Header</h1>;
}

function Checkout() {
  return <h1>Checkout</h1>;
}

function Home() {
  return <h1>Home</h1>;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM