React-router4 第三篇 BasicURL ParametersRedirects (Auth) 谷歌翻译:重定向
依旧是地址
https://reacttraining.com/react-router/web/example/auth-workflow
上来一步走 先导入模块
import React, { PropTypes } from 'react'
import {
BrowserRouter as Router,
Route,
Link,
Redirect,
withRouter
} from 'react-router-dom'
关键组件
<Redirect to={{ pathname: "/path", other: "" }}/>
官方代码
const AuthExample = () => (
<Router>
<div>
<AuthButton/>
<ul> // 同样,先定义a标签
<li><Link to="/public">Public Page</Link></li>
<li><Link to="/protected">Protected Page</Link></li>
</ul>
// 再定义路由 两个看似很普通的路由,和一个不那么普通的路由,,官方例子中,点击/protected路由,却发现地址栏访问了login路由。。
<Route path="/public" component={Public}/>
<Route path="/login" component={Login}/>
<PrivateRoute path="/protected" component={Protected}/> // 原来这里确实访问了/protected 但是却在<PrivateRoute />组件中又被跳走了
</div>
</Router>
)
关键代码 在这里!!!
ES6的 ...rest 的展开运算符,,很嚣张,很暴力!,不懂的话,百度ES6 展开运算符,,在这里...rest 指代的是 path="/protected"
const PrivateRoute = ({ component, ...rest }) => (
<Route {...rest} render={props => (
fakeAuth.isAuthenticated ? (
React.createElement(component, props)
) : (
<Redirect to={{ // 重定向组件来了,,Redirect是也。!! 然后传参给pathname,,然后就重定向走了呀。。。顺便可以加点参数什么的,另一头就可以接受=收了
pathname: '/login',
state: { from: props.location }
}}/>
)
)}/>
)
React-router4 第三篇 BasicURL ParametersRedirects (Auth) 谷歌翻译:重定向的更多相关文章
- 七天接手react项目 系列 —— 尾篇(antd 和 mobx)
其他章节请看: 七天接手react项目 系列 尾篇 前面我们依次学习了 react 基础知识.react 脚手架创建项目.react 路由,已经花费了不少时间,但距离接手 spug_web 项目还有一 ...
- 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...
- (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...
- 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 第三篇 Entity Framework Plus 之 Query Cache
离上一篇博客,快一周,工作太忙,只能利用休息日来写一些跟大家分享,Entity Framework Plus 组件系列文章,之前已经写过两篇 第一篇 Entity Framework Plus 之 A ...
- 我的屌丝giser成长记-研三篇
进入研三以来,基本都是自己的自由时间了,从导师的项目抽离出来,慢慢的都交给师弟他们来负责.研三的核心任务就是找工作以及写毕业论文,因为有导师科研基金项目成果作为支撑,所以自己的论文没什么可担心,一切都 ...
- javascript面向对象系列第三篇——实现继承的3种形式
× 目录 [1]原型继承 [2]伪类继承 [3]组合继承 前面的话 学习如何创建对象是理解面向对象编程的第一步,第二步是理解继承.本文是javascript面向对象系列第三篇——实现继承的3种形式 [ ...
- 前端工程师技能之photoshop巧用系列第三篇——切图篇
× 目录 [1]切图信息 [2]切图步骤 [3]实战 前面的话 前端工程师除了使用photoshop进行测量之外,更重要的是要使用该软件进行切图.本文是photoshop巧用系列的第三篇——切图篇 切 ...
- 解剖SQLSERVER 第三篇 数据类型的实现(译)
解剖SQLSERVER 第三篇 数据类型的实现(译) http://improve.dk/implementing-data-types-in-orcamdf/ 实现对SQLSERVER数据类型的解 ...
随机推荐
- IE快捷键
键盘快捷键 在后台打开新选项卡中的链接 CTRL+单击 在前台打开新选项卡中的链接 CTRL+SHIFT+单击 在前台打开新选项卡 CTRL+T 从地址栏打开新选项卡 ALT+ENTER 从搜索框打开 ...
- CKfinder for java详解二:缩略图及图片上传的缩放
我们找到 <thumbs><enabled>true</enabled><url>�SE_URL%_thumbs/</url><dir ...
- Android Studio 统计行数
开发中常常会想看看自己累积在这个项目中写了多少代码了,以下就是在Android Studio查看统计项目代码总行数的方法. 打开Android Studio,按快捷键Ctrl+Shift+A 输入fi ...
- 详解 Tomcat 的连接数与线程池
前言 在使用tomcat时,经常会遇到连接数.线程数之类的配置问题,要真正理解这些概念,必须先了解Tomcat的连接器(Connector). 在前面的文章 详解Tomcat配置文件server. ...
- 1.3.4、CDH 搭建Hadoop在安装之前(端口---Impala使用的端口)
Impala使用的端口 Impala使用下表中列出的TCP端口.在部署Impala之前,请确保在每个系统上打开这些端口. Component Service Port Access Requireme ...
- Jmeter(二十五)常见问题(转载)
转载自 http://www.cnblogs.com/yangxia-test 收集工作中JMeter遇到的各种问题 1. JMeter的工作原理是什么? 向服务器提交请求:从服务器取回请求返回 ...
- 笔记-Python中逗号的作用
1.用,去掉额外的换行符
- win10 安装php
缺失:msvcp110.dll https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=30679
- serv-U使用
该软件是设置ftp服务器的 可以百度查询ftp服务器安装攻略,如 https://jingyan.baidu.com/article/cb5d6105c00bba005c2fe0ca.html 问题: ...
- zabbix3.0.4安装部署与SendEmail报警配置
MySQL:5.6.21 nginx:1.62 PHP:5.7 pcre:8.32 zabbix:3.0.4 LNMP安装步骤略过 # tar xvf zabbix-3.0.4.tar.gz # cd ...