< react router>: (路由)
< react router> (路由):
思维导图:

Atrial 文件夹下的index.js 文件内容:
import React, { Component } from 'react'
import{
Link,
}from 'react-router-dom'
export default class Atrial extends Component {
render() {
return (
<div>
<Link to='atrial/1'>文章一:</Link>
<Link to='atrial/2'>文章二:</Link>
</div>
)
}
}
还有一种传递方式叫隐士传参:
import React, { Component } from 'react'
import{
Link,
}from 'react-router-dom'
export default class Atrial extends Component {
render() {
return (
<div>
<Link to='atrial/1'>文章一:</Link>
<Link to={{
pathname:'/atrial/2',
state:{
from:'artial'
}
}}>文章二:</Link>
</div>
)
}
}
---------------------------------------------------
和上面的一样,只不过这里用到了隐士传参
Atrial 文件夹下的 ArtialDetall .js 的内容:
import React, { Component } from 'react'
export default class ArtialDetall extends Component {
render() {
console.log(this.props)
return (
<div>
文章详情{this.props.match.params.id}
</div>
)
}
}
Home 文件夹下的 index.js 内容:
import React, { Component } from 'react'
export default class Home extends Component {
render() {
return (
<div>
<h3>柚子小哥哥!</h3>
</div>
)
}
}
Users 文件夹下的 index.js 内容:
import React, { Component } from 'react'
export default class Users extends Component {
render() {
return (
<div>
<h3>橙子小姐姐!</h3>
</div>
)
}
}
NotFount 文件夹下的 index.js 的内容: (这个文件夹代表的是404)
import React, { Component } from 'react'
export default class NotFound extends Component {
render() {
return (
<div>
404
</div>
)
}
}
Views 文件夹下的 index.js 的内容:(把Views 文件夹下的组件抛出去)
export { default as Home } from './Home'
export { default as Atrial } from './Atrial'
export { default as Users } from './Users'
export { default as ArtialDetall } from './Atrial/ArtialDetall'
export { default as NotFound } from './NotFound'
App.js 的内容:
/* eslint-disable no-unused-vars */
import React, { Component } from 'react'
import {Route, NavLink as Link,Redirect,Switch } from 'react-router-dom'
import {
Home,
Users,
Atrial,
ArtialDetall,
NotFound,
} from './Views' export default class App extends Component {
render() {
console.log(this.props)
return (
<div>
<ul>
<li><Link to='/home'>首页</Link></li>
<li><Link to='/users'>新闻</Link></li>
<li><Link to='/atrial'> 娱乐</Link></li>
</ul>
<Switch>
<Route path='/home' render={()=>{return <Home/>}}/>
<Route component={Users} path ='/users'/>
<Route component={Atrial} path='/atrial' exact/>
<Route component={ArtialDetall} path='/atrial/:id'/>
<Route component={NotFound} path='/404'/>
<Redirect to='/home' from='/' exact />
<Redirect to='/404'/>
</Switch>
</div>
)
}
}
index.js 的内容:
import React from 'react';
import ReactDOM from 'react-dom';
import {BrowserRouter as Router , Route} from 'react-router-dom'
import App from './App'; ReactDOM.render(
<Router>
<Route component={App} />
</Router>,
document.getElementById('root'));
总结:
< react router>: (路由)的更多相关文章
- React初识整理(四)--React Router(路由)
官网:https://reacttraining.com/react-router 后端路由:主要做路径和方法的匹配,从而从后台获取相应的数据 前端路由:用于路径和组件的匹配,从而实现组件的切换. 如 ...
- react router路由传参
今天,我们要讨论的是react router中Link传值的三种表现形式.分别为通过通配符传参.query传参和state传参. ps:进入正题前,先说明一下,以下的所有内容都是在react-rout ...
- 【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 首先,我们 ...
- React Router路由传参方式总结
首先我们要知道一个前提,路由传递的参数我们可以通过props里面的属性来获取.只要组件是被<Router>组件的<component>定义和指派的,这个组件自然就有了props ...
- react router 4.0以上的路由应用
thead>tr>th{padding:8px;line-height:1.4285714;border-top:1px solid #ddd}.table>thead>tr& ...
- react router @4 和 vue路由 详解(七)react路由守卫
完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 12.react路由守卫? a.在之前的版本中,React Router 也提供了类似的 ...
- react router @4 和 vue路由 详解(全)
react router @4 和 vue路由 本文大纲: 1.vue路由基础和使用 2.react-router @4用法 3.什么是包容性路由?什么是排他性路由? 4.react路由有两个重要的属 ...
- React Router 4.0 实现路由守卫
在使用 Vue 或者 Angular 的时候,框架提供了路由守卫功能,用来在进入某个路有前进行一些校验工作,如果校验失败,就跳转到 404 或者登陆页面,比如 Vue 中的 beforeEnter 函 ...
随机推荐
- 简说Spring中的资源加载
声明: 本文若有 任何纰漏.错误,请不吝指正!谢谢! 问题描述 遇到一个关于资源加载的问题,因此简单的记录一下,对Spring资源加载也做一个记录. 问题起因是使用了@PropertySource来进 ...
- Robot Framework(11)- 用户关键字的详解
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 什么是用户关键字 ...
- JVM调优总结(八)-反思
垃圾回收的悖论 所谓“成也萧何败萧何”.Java的垃圾回收确实带来了很多好处,为开发带来了便利.但是在一些高性能.高并发的情况下,垃圾回收确成为了制约Java应用的瓶颈.目前JDK的垃圾回收算法,始终 ...
- web selenium 小笔记
常用库导入 from selenium import webdriver #导入webdriver模块 from selenium.webdriver.common.by import By # XP ...
- SPA页面
背景: 单页 Web 应用 (single-page application 简称为 SPA) 是一种特殊的 Web 应用,它将所有的活动均局限于一个Web页面中:这就表示Web应用被加载出来之后,W ...
- 折腾自己的js闭包(二)
前面我大致探讨了js里的闭包的相关概念,那么,到底在什么时候用它最好呢?存在即真理,只不过以前没发现它而已,先来看看下面的这几个用途吧 一.我首先想到的就是从函数外面访问它的内部变量,从而达到自己的一 ...
- Spring Boot笔记(三) springboot 集成 Quartz 定时任务
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1. 在 pom.xml 中 添加 Quartz 所需要 的 依赖 <!--定时器 quartz- ...
- 蓝桥杯 算法训练 P0505(Java解法)
一个整数n的阶乘可以写成n!,它表示从1到n这n个整数的乘积.阶乘的增长速度非常快,例如,13!就已经比较大了,已经无法存放在一个整型变量中:而35!就更大了,它已经无法存放在一个浮点型变量中.因此, ...
- Java实现 LeetCode 437 路径总和 III(三)
437. 路径总和 III 给定一个二叉树,它的每个结点都存放着一个整数值. 找出路径和等于给定数值的路径总数. 路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点 ...
- Java实现 蓝桥杯VIP 算法提高 师座操作系统
算法提高 师座操作系统 时间限制:1.0s 内存限制:256.0MB 问题描述 师座这天在程序设计课上学了指针和结构体以后,觉得自己可以轻松的写出操作系统,为了打败大微软帝国,他给这个系统起了个响亮的 ...