React-router路由4.0版本用法
第一步:引包两个
命令:cnpm i -S react-router react-router-dom
第二步:用路由管理APP页面
1.创建主路由管理页面,在这里使用了路由嵌套
import React, { Component } from 'react';
import { Route, BrowserRouter } from 'react-router-dom'
import App from '../App'
import SubRouter from './SubRouter' //二级路由
export default class ReactApp extends Component {
render() {
return (
<BrowserRouter>
<App>
{/* 这里为了分离得彻底,使用组件嵌套,app组件跳到SubRouter组件*/}
<Route path="/" component={SubRouter}></Route>
</App>
</BrowserRouter>
)
}
}
2.创建二级路由页面,引入组件
import React, { Component } from 'react'
import { Route, Switch } from 'react-router-dom'
import Home from '../Component/Home'
import Movie from '../Component/Movie'
import About from '../Component/About'
export default class SubRouter extends Component {
render() {
return (
// 路由配置
<Switch>
<Route exact path="/" component={Home}></Route>
<Route exact path='/movie' component={Movie}></Route>
<Route exact path="/about" component={About}></Route>
</Switch>
)
}
}
3.在App页面给显示位置,以及设置点击跳转
import React, { Component } from 'react';
import { Link } from 'react-router-dom'
export default class App extends Component {
render() {
return (
<div>
{/* 点击路由跳转,使用react-router-dom的Link */}
<ul>
<li>
<Link to='/'>首页</Link >
</li>
<li>
<Link to='/movie'>电影</Link >
</li>
<li>
<Link to='/about'>关于</Link >
</li>
</ul>
{/* 在APP主页面,给SubRouter留显示位置*/}
{this.props.children}
</div>
)
}
}
4.修改index.js需要渲染的组件,由渲染原来的APP改为渲染主路由,因为已经用路由管理App页面了
import React from 'react';
import ReactDOM from 'react-dom';
import AppRouter from './AppRouter/AppRouter';
import * as serviceWorker from './serviceWorker'; ReactDOM.render(<AppRouter />, document.getElementById('root'));
serviceWorker.unregister();
三.页面效果

四.文件目录

写得有什么不对的地方,还请大家多多指教,多谢。
React-router路由4.0版本用法的更多相关文章
- < react router>: (路由)
< react router> (路由): 思维导图: Atrial 文件夹下的index.js 文件内容: import React, { Component } from 'rea ...
- react router路由传参
今天,我们要讨论的是react router中Link传值的三种表现形式.分别为通过通配符传参.query传参和state传参. ps:进入正题前,先说明一下,以下的所有内容都是在react-rout ...
- React初识整理(四)--React Router(路由)
官网:https://reacttraining.com/react-router 后端路由:主要做路径和方法的匹配,从而从后台获取相应的数据 前端路由:用于路径和组件的匹配,从而实现组件的切换. 如 ...
- React Router路由传参方式总结
首先我们要知道一个前提,路由传递的参数我们可以通过props里面的属性来获取.只要组件是被<Router>组件的<component>定义和指派的,这个组件自然就有了props ...
- 【react router路由】<Router> <Siwtch> <Route>标签
博客 https://www.jianshu.com/p/ed5e56994f13?from=timeline 文档 http://react-guide.github.io/react-router ...
- react ---- Router路由的使用和页面跳转
React-Router的中文文档可以参照如下链接: http://react-guide.github.io/react-router-cn/docs/Introduction.html 首先,我们 ...
- vue过滤器在v2.0版本用法
vue 1.x 的写法在 vue 2.x版本已经废除 vue 1.x 写法 <body> <div id="app"> {{message | capit ...
- React躬行记(13)——React Router
在网络工程中,路由能保证信息从源地址传输到正确地目的地址,避免在互联网中迷失方向.而前端应用中的路由,其功能与之类似,也是保证信息的准确性,只不过来源变成URL,目的地变成HTML页面. 在传统的前端 ...
- react router 4.0以上的路由应用
thead>tr>th{padding:8px;line-height:1.4285714;border-top:1px solid #ddd}.table>thead>tr& ...
随机推荐
- HTML5的5个的新特性
特性1:正则表达式 无须使用服务端的检测,使用浏览器的本地功能,就可以帮助你判断邮箱的格式,URL,电话,防止用户输入错误的信息,通过H5的pattern属性,很方便的整合这个功能. <inpu ...
- 打开phpstorm 的terminal 工具框的快捷键 alt+F12
打开phpstorm 的terminal 工具框的快捷键 alt+F12 Alt + #[0-9] 打开相应的工具窗口
- Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.1.3.RELEASE:repackage (repackage)
解决方案是删除 pom.xml配置的问题 <build> <plugins> <plugin> <groupId>org.springframework ...
- 使用jackson转json解决双向关联循环调用
ITOO V1.0的开发算是告一段落了,现在是整理总结交接环节,在这个项目中常见的问题也该好好整理一下和大家分享了,这次主要介绍转json循环调用的问题. 一.问题背景 相信只要使用ORM映射实体关联 ...
- 一次操作系统报错OutOfMemory Error的处理记录
在启动公司内嵌的tomcat容器时出现报错, 如下: # There is insufficient memory for the Java Runtime Environment to contin ...
- java Iterator接口
Iterator主要遍历Collection集合中的元素,也有称为迭代器或迭代精灵. boolean hasNext():若被迭代的集合元素还没有被遍历,返回true. Object next(): ...
- Python--day46--mysql存储过程(不常用)(包含防sql注入)
一.存储过程: 优点:只要传很少的数据到数据库就可以了 缺点:dba管理数据库的时候可能会对数据库进行了更改了那一坨sql语句. 二.创建存储过程: 1.简单 创建存储过程: Python中使用结果 ...
- C# GUID ToString
最近在看到小伙伴直接使用 Guid.ToString ,我告诉他需要使用 Guid.ToString("N") ,为什么需要使用 N ,因为默认的是 D 会出现连字符. Guid ...
- linux预备知识
我们正在接近去看一些实际的模块代码. 但是首先, 我们需要看一些需要出现在你的模块 源码文件中的东西. 内核是一个独特的环境, 它将它的要求强加于要和它接口的代码上. 大部分内核代码包含了许多数量的头 ...
- P1042 查找大于等于x的最小元素
题目描述 现在告诉你一个长度为 \(n\) 的有序数组 \(a_1, a_2, ..., a_n\) ,以及 \(q\) 次询问,每次询问会给你一个数 \(x\) ,对于每次询问,你需要输出数组 \( ...