React学习20----react-router4.x中实现路由模块化,以及嵌套路由父子组件传值


https://blog.csdn.net/zhaihaohao1/article/details/87966970
中的路由封装成模块
使用起来更加方便:
封装1:
把路由定义成一个数组 routes
配置的时候循环数组,配置
如下:
App.js

import React, { Component } from 'react';
import logo from './assets/images/logo.svg';
import './assets/css/App.css';
import Home from "./components/Home";
import Shop from "./components/Shop";
import User from "./components/User";
import {BrowserRouter as Router, Route, Link} from "react-router-dom";


// 定义数组中定义一个路由对象,配置路由
let routes =[
  {
    path :'/',
    component:Home,
    exact:true,
  },
  {
    path :'/user',
    component:User,
  },
  {
    path :'/shop',
    component:Shop,

  },

]

class App extends Component {
  render() {
    return (
        <Router>
          <div>
            {/*上面显示两个标题*/}
            <header className="title">
              <Link to="/">首页组件</Link>
              <Link to="/user">用户页面</Link>
              <Link to="/shop">商户页面</Link>


            </header>


            {/*循环配置路由*/}
            {
              routes.map( (value,key)=> {
                //判断默认路由
                if (value.exact){
                  return <Route key={key} exact path={value.path} component={value.component}/>;
                } else{
                  return <Route key={key} path={value.path} component={value.component}/>;
                }
              })
            }

          </div>
        </Router>
    );
  }
}

export default App;

源码下载:
rdemo20

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值