我如何为我的仪表板组件使用 React 嵌套路由

How i use react nested routing for my dashboard component

我正在构建一个有 4 个主要页面的应用程序,每个页面中都有各种组件。

页数

  1. 首页
  2. 仪表板

组件

  1. 主页 >(服务、关于、登录)

  2. 仪表板(个人资料、ListUsers、SearchTweets 等...)

问题:

因此主页组件及其路由非常好。 问题出在仪表板页面上。如果我单击左侧仪表板导航栏中的配置文件组件,请不要在 right.Besides 上加载组件,它会将我重定向到配置文件空页面(附有图像) [[1]][1]

仪表板代码

import React from 'react'
import { Route } from "react-router-dom"
import "./dashboard-style.css"
// protected for only authenticated or logged in users 
import NavDashboard from "../components/Navigation/dashboard-nav"
import Profile from "../components/Profile/profile"
function Dashboard() {
    return (
        <div className="outer-dash-container">
            <div className="left-dash-nav">
                <NavDashboard />
            </div>
            <div className="right-dash-panel">
                <h1>I want to show my componets here </h1>
                <Route exact path="/profile" component={Profile} />
            </div>
        </div>
    )
}

export default Dashboard

仪表板导航栏代码

import React from 'react'
import { Link, Route } from "react-router-dom"
import "./navbar-style.css"
function NavDashboard() {
    return (
        <>

            <div className="nav-dash-left">
                <div className="logo">
                    {/* <h1><b className="text-format">Tox</b><i>D</i>etector</h1> */}
                </div>
                <ul>
                    <li className="nav-link nav-link-dash"><Link to="/profile" className="nav-link"> Profile</Link></li>
                    <li className="nav-link nav-link-dash"><Link to="/block" ></Link>
                        List User
                    </li>
                    <li className="nav-link nav-link-dash">Search Tweet</li>
                    <li className="nav-link nav-link-dash">Check Stat</li>
                    <li className="nav-link nav-link-dash"> Search By Cities</li>
                </ul>

            </div>


        </>
    )
}

export default NavDashboard

这是我的应用路由

import './App.css';
import Register from "../src/components/User_Manage/register"
import { Route, Redirect } from "react-router-dom"
import Login from './components/User_Manage/login';
import Home from './pages/Home'
import Dashboard from "./pages/Dashboard"
function App() {

  return (
    <>
  <Route exact path="/" component={Home} />
      <Route exact path="/register" component={Register} />
      <Route exact path="/login" component={Login} />
      <Route exact path="/dashboard" component={Dashboard} />
    

    </>
  );
}

export default App;

从您嵌套路由的地方删除 exact 它将正常工作。