react路由嵌套

react路由嵌套在config.js中添加配置项importTwofrom”../pages/Home/Two”importRecommendfrom”../pages/Recommend/Recemmend”;//导入组件letrouters=[{path:”/home”,//路由地址component:Home,//路由模板routes:[//路由嵌套配置路由嵌套不能使用精准匹配

大家好,又见面了,我是你们的朋友全栈君。

在config.js 中添加配置项

import Two from "../pages/Home/Two"
import Recommend from "../pages/Recommend/Recemmend";  //导入组件

let routers = [
    {
        path: "/home",   //路由地址
        component: Home,    //路由模板   
        routes: [    //路由嵌套  配置路由嵌套不能使用精准匹配
            {
                path: "/home/recommend",
                component: Recommend,
                exact: true,   //精准匹配
            },
            {
                path: "/home/ranking",
                component: System,
                exact: true,
            },
            {
                path: "/home/two",
                component: Two,
                exact: true,
            },
        ]
    },
    {
        path: "/about",
        component: About,
        exact: true
    },
    {
        path: "/",
        redirect: "/home",   //重定向
    }
]

export default routers;

将配置文件导入到路由组件 index.js


import React, { Component } from 'react';
import { Switch, Route, Redirect } from "react-router-dom";  
import routers from "./config";  //配置文件

class Router extends Component {
    render() {
        return (
            <Switch>
                {routers.map((value, index) => {  //映射注入Route组件中
                    if (!value.redirect) {   //需要重定型执行写下面代码
                        return (
                            <Route key={index} exact={value.exact} path={value.path} component={props => <value.component {...props} routes={value.routes} />} ></Route>
                            //如果有路由嵌套,则将路由签到传递到组件的props中,在传递的组件中再次进行路由配置
                        
                        )
                    } else {
                        return (
                            <Redirect key={index} from={value.path} to={value.redirect}></Redirect>
                            //重定向
                        )
                    }
                })}
            </Switch>
        );
    }
}

export default Router; 将文件导注入到app.js中

app.js

import './App.css';
import React, { Component } from 'react';
import RouterView from './router/index';
class App extends Component {
  render() {
    return (
      <div>
      //将组件使用在app.js中
        <RouterView></RouterView>
      </div>
    );
  }
}

export default App;

在路由嵌套的Home页面中再次配置路由组件;


 render() {
console.log(this.props.routes)   //路由嵌套的配置规则
        return (
            <div className="Home-box">
                <Switch>
                //再次添加路由组件实现路由嵌套
                    {this.props.routes.map((value, index) => <Route key={index} path={value.path} exact={value.exact} component={value.component}></Route>)}
                </Switch>
            </div>
        );
    }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131483.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • moxa串口服务器网页版用户名密码,moxa串口服务器设置密码

    moxa串口服务器设置密码内容精选换一换登录Windows操作系统的弹性云服务器时,需使用密码方式登录。因此,用户需先根据创建弹性云服务器时使用的密钥文件,获取该弹性云服务器初始安装时系统生成的管理员密码(Administrator帐户或Cloudbase-init设置的帐户)。该密码为随机密码,安全性高,请放心使用。请根据您的个人需求,通过管理控制台或API方式获取Windo登录Windows…

    2022年4月6日
    134
  • python读取excel单元格内容_python如何读取文件夹下的所有文件

    python读取excel单元格内容_python如何读取文件夹下的所有文件python读取excel文件的内容可以方便我们查看信息。#-*-codeing=utf-8-*-#@Time:2022/4/1621:06#@Author:ning#@File:xlsx.py#@software:PyCharm#引入xlrd2去支持读取xlsx相关的文件importxlrd2#定义文件名file_name=’4016.xlsx’#读取xlsx文件#预计输出#4016.xlsx该文件有2个tab页sku_

    2022年10月2日
    3
  • QUIC简单介绍

    QUIC简单介绍

    2021年12月9日
    51
  • 全局莫兰指数_空间自相关 | 莫兰指数

    全局莫兰指数_空间自相关 | 莫兰指数空间自相关:是指一些变量在同一个分布区内的观测数据之间潜在的相互依赖性。其中,自相关中的“自”表示当你进行相关性观察统计量,是来源于不同对象的同一属性。Tobler(1970)曾指出“地理学第一定律:任何东西与别的东西之间都是相关的,但近处的东西比远处的东西相关性更强”。空间自相关统计量是用于度量地理数据(geographicdata)的一个基本性质:某位置上的数据与其他位置上的数据间…

    2022年6月25日
    61
  • 在dos中发现一个分区表_dos dir命令

    在dos中发现一个分区表_dos dir命令下面以我所使用的电脑硬盘为例来分析0号扇区,看看MBR中的表项包含了多少信息,是什么意思。由前面的分析我们知道00~1BD的446个字节为引导代码,所以我们重点关注分区表项。即1BD~1FD,这个64个字节。为了方便起见,这里将分区表一列表的形式展现出来,由于CHS现几乎不再使用了,所以我们只提取了LBA参数。分区表值表项号引导标志分区类型值起始扇区

    2025年5月30日
    1
  • 计算机组成原理:最详细笔记!

    计算机组成原理:最详细笔记!前言参考:《王道计算机组成原理》学习笔记总目录+思维导图2019王道考研计算机组成原理第一章计算机系统概述1.1计算机发展历程1.1.1计算机硬件的发展计算机系统=硬件+软件计算机硬件的发展:第一代计算机:(使用电子管),第二代计算机:(使用晶体管),第三代计算机:(使用较小规模的集成),第四代计算机:(使用较大规模的集成),已经经历了4代,计算机的速度越来越快,并且体积变得越来越小。发展趋势:更微型、多用途;更巨型、超高速晶体管之父:肖克利(1956年诺贝尔物

    2022年5月31日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号