我的编程空间,编程开发者的网络收藏夹
学习永远不晚

模块化react-router如何配置

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

模块化react-router如何配置

这篇文章主要介绍了模块化react-router如何配置,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

react-router模块化配置

因为公司的需要最近踏进了react坑,一直在挖坑填坑,在路由这一块折腾得不行。

直接进入主题,配置react-router模块化

1.先下载react-router-dom

npm install react-router-dom --save

2.在相应的文件引入react-router-dom相应的模块

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

3.在class="lazy" data-src子创建一个module目录,接着在module目录在创建一个router.js文件,用来配置路由。

//router.js
import Index from '../components/Index'
import New from '../components/New'
  import NewList from '../components/NewList'
  import NewContent from '../components/NewContent'
  
const routes = [
  
  {
    path:"/",
    component:Index,
    exact:true
  },
  {
    path:"/new",
    component:New,
    routes:[
      {
        path:"/new/",
        component:NewContent
      },
      {
        path:"/new/newList",
        component:NewList
      }
    ]
  },
  
]

export default routes

4.在app.js根目录添加相应的跳转路径。

//app.js

import React from 'react';
import './App.css';
import { BrowserRouter as Router, Route, Link } from "react-router-dom";
import router from "./modules/routers"

function App() {
 return (
  <Router>
      <nav className="nav">
        <ul>
          <li>
            <Link to="/">首页</Link>
          </li>
          <li>
            <Link to="/new">新闻</Link>
          </li>
        </ul>
      </nav>
      {
        router.map((router,index)=>{
          
            if(router.exact){
              
              return <Route exact key={index} path={router.path}
                render = {
                  props =>(
                    <router.component {...props} routes = {router.routes}/>
                  )
                }
              />
              
            }else{
              
              return <Route key={index} path={router.path}
                render = {
                  props =>(
                    <router.component {...props} routes = {router.routes} />
                  )
                }
              />
              
            }
          
        })
      }
    </Router>
 );
}

export default App;

注意点:嵌套路由千万不要在<Route/>身上加上component={xxx.xxx},否则在子路由页码就接受不到父路由传递给子路由的数据,重要的事情说三篇

注意点:嵌套路由千万不要在<Route/>身上加上component={xxx.xxx},否则在子路由页码就接受不到父路由传递给子路由的数据,重要的事情说三篇

注意点:嵌套路由千万不要在<Route/>身上加上component={xxx.xxx},否则在子路由页码就接受不到父路由传递给子路由的数据,重要的事情说三篇

解析一下,<Route/>里面的render,这是官方给出的一种固定写法,为了解决父路由传递数据给子路由接受不到的问题。render是一个对象,里面是一个箭头函数,箭头函数放回<router.component {...props} routes = {router.routes} />一个标签,router.component的router对于的是你map传进来的那个形参,传啥写啥;component 是配置文件对应的component ,routes 是传给子路由的数据、(子路由通过this.props.routes 接收)

5.在有子路由的页码配置跳转

import React ,{Component} from 'react';

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

class New extends Component{
  
  render(){
    
    return(
      
      <div className="box">
        <div className="left">
          <ul>
            <li>
              <Link to="/new">New</Link>
            </li>
            <li>
              <Link to="/new/newList">NewList</Link>
            </li>
          </ul>
        </div>
        <div className="right">
          {
            this.props.routes.map((item,index)=>{
              
              return <Route key={index} exact path={item.path} component={item.component}></Route>
              
            })
          }
        </div>
      </div>
      
    )
    
  }
  
}

export default New

最后的结果为:

模块化react-router如何配置

感谢你能够认真阅读完这篇文章,希望小编分享的“模块化react-router如何配置”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

模块化react-router如何配置

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

vue-router history模式服务器端如何配置

这篇文章主要介绍了vue-router history模式服务器端如何配置的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue-router history模式服务器端如何配置文章都会有所收获,下面我们一起来看
2023-07-04

nodejs express路由匹配控制及Router模块化使用详解

这篇文章主要为大家介绍了nodejs express路由匹配控制及Router模块化使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-11-13

Linux中如何配置键盘的设备模块

这篇文章主要介绍Linux中如何配置键盘的设备模块,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!配置键盘1. 配置键盘的设备模块对于我们常见的键盘一般有三种类型,其一为老式的五针键盘,其二为ps/2键盘,其三是usb
2023-06-16

jquery如何模块化开发

本文深入探讨了jQuery模块化开发,介绍了模块化开发的优势:代码可维护性、重用性、团队协作。还提供了四种在jQuery中实现模块化的模式:IIFE、工厂函数、命名空间和AMD模块。此外,文章还介绍了选择模块化模式的准则、最佳实践和使用jQuery功能的建议。遵循这些原则可以创建可扩展且易于维护的jQuery应用程序。
jquery如何模块化开发
2024-04-02

JavaScript 模块化如何理解

这期内容当中小编将会给大家带来有关JavaScript 模块化如何理解,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。前言:1.概念将一个复杂的程序依据一定的规则(规范)封装成几个块(文件), 并进行组合在
2023-06-22

如何实现Flex模块化

这篇文章主要介绍了如何实现Flex模块化,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如何Flex模块化2.1创建模块基于mxml的模块,在你的工程右键->new->mxml
2023-06-17

es6模块化如何使用

本篇内容介绍了“es6模块化如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!天下苦 CommonJs 久矣Es Module 的独特之
2023-07-05

css中如何实现模块化

css中如何实现模块化?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。oocss面对对象的规则,主要的原则是两种:分离结构和外观,分离容器和内容。名词解释分离结构和外观:增加
2023-06-08

react如何配置px转换rem

小编给大家分享一下react如何配置px转换rem,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!安装相关的依赖npm i lib-flexible --savenpm i postcss-px2rem --save主要用来
2023-06-14

python如何内置csv模块

这篇文章主要介绍“python如何内置csv模块”,在日常操作中,相信很多人在python如何内置csv模块问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python如何内置csv模块”的疑惑有所帮助!接下来
2023-06-25

Python自动化测试ConfigParser模块读写配置文件

Python自动化测试ConfigParser模块读写配置文件 ConfigParser 是Python自带的模块, 用来读写配置文件, 用法及其简单。 直接上代码,不解释,不多说。 配置文件的格式是: []包含的叫section,
2022-06-04

如何在CentOS中安装和配置SELinux安全模块

在CentOS中安装和配置SELinux安全模块的步骤如下:安装SELinux安全模块:sudo yum install policycoreutils selinux-policy selinux-policy-targeted启用SEL
如何在CentOS中安装和配置SELinux安全模块
2024-03-15

编程热搜

目录