路由库:https://reacttraining.com/react-router/

gitbub: https://github.com/ReactTraining/react-router

介绍

react-router 在我学习的时候遇到一个坑,当时不知版本查别这个么大,看着有些大牛的写法,自己很蒙,在这记录一下自己心得。

react Router安装

react router react-router-dom react-router-native 的关系

React Router是核心路由功能,但是您可能不想直接安装它。如果要编写将在浏览器中运行的应用程序,则应该安装react-router-dom。同样,如果您正在编写React Native应用程序,则应该安装install react-router-native。这两个都将react-router作为依赖项安装。

browserHistory,hashHistory

使用的是hashHistory, 遇到的问题就是链接地址会有 #

一般我使用browerHistory,可以看我另一篇文章了解更多二者区分用法

使用方法如下

import React, { Component } from 'react';
import { BrowserRouter as Router, Switch, Route } from "react-router-dom";
import Home from '../views/index';
import Login from '../views/login';
class RouterHome extends Component {render() {return (<Router><Switch><Route path="/home/" component={Home} /><Route path="/" component={Login} /></Switch></Router>)}
}
export default RouterHome

Link

路由跳转

<Link to={{pathname: '/courses',search: '?sort=name',hash: '#the-hash',state: { fromDashboard: true }
}}/>

pathname:路径

search:参数

hash: 放入网址的hash     (可做页面定位使用)

state:状态持续到location(本人使用比较少,页面刷新后state为空);

当然也可以通过js来进行路由调转利用history.push('路径') 即可

Route

Route 组件也许是 React Router 中最重要的组件

最常用的的方法

import { BrowserRouter as Router, Route } from 'react-router-dom'<Router><Route exact path="/" component={Home}/><Route path="/news" component={NewsFeed}/>
</Router>

exact 默认true 路径完全匹配的意思

Switch

渲染与该地址匹配的第一个子节点 <Route> 或者 <Redirect>

使用方法如下

<Switch><Route exact path="/" component={Home}/><Route path="/users" component={Users}/><Redirect from="/accounts" to="/users"/><Route component={NoMatch}/>
</Switch>

React Router 全部相关推荐

  1. React router 的 Route 中 component 和 render 属性理解

    React router 的 Route 中 component 和 render 属性理解 Route 标签的三个互斥属性 render.component.children Route 就是用来匹 ...

  2. router路由react_使用React Router在React中受保护的路由

    router路由react In this video, you will see how to create a protected route using React Router. This r ...

  3. hitchhiker部署_Hitchhiker的React Router v4指南:无限远的递归路径!

    hitchhiker部署 Welcome to the third part of the Hitchhiker's Guide to React Router v4. In this article ...

  4. [React Router v4] Intercept Route Changes

    If a user has entered some input, or the current Route is in a "dirty" state and we want t ...

  5. 使用React Router以编程方式导航

    通过react-router我可以使用Link元素来创建由react路由器本地处理的链接. 我在内部看到它调用this.context.transitionTo(...) . 我想从下拉列表中进行导航 ...

  6. 从 React Router 谈谈路由的那些事

    React Router 是专为 React 设计的路由解决方案,在使用 React 来开发 SPA (单页应用)项目时,都会需要路由功能,而 React Router 应该是目前使用率最高的. Re ...

  7. [React Router v4] Conditionally Render a Route with the Switch Component

    We often want to render a Route conditionally within our application. In React Router v4, the Route ...

  8. 初探 React Router 4.0

    React Router 4.0 (以下简称 RR4) 已经正式发布,它遵循React的设计理念,即万物皆组件.所以 RR4 只是一堆 提供了导航功能的组件(还有若干对象和方法),具有声明式(引入即用 ...

  9. React Router 使用教程

    真正学会 React 是一个漫长的过程. 你会发现,它不是一个库,也不是一个框架,而是一个庞大的体系.想要发挥它的威力,整个技术栈都要配合它改造.你要学习一整套解决方案,从后端到前端,都是全新的做法. ...

  10. hitchhiker部署_《 Hitchhiker的React Router v4指南》:路由配置的隐藏值

    hitchhiker部署 Welcome to the Hitchhiker's Guide to React Router v4, Part IV! 欢迎来到< React Router v4 ...

最新文章

  1. bash shell 合并文件
  2. AMP328音频放大器
  3. 这里提供了在Linux上显示某个进程的线程的几种方式
  4. 设计模式三之抽象工厂模式
  5. Python 格式化输出和while循环的两个小练习
  6. java中序列化的serialVersionUID解释
  7. 特征向量按照特征值大小进行排序
  8. Oracle入门(十四.23)之管理触发器
  9. 算法 - 普里姆算法(修路问题求解)
  10. mysql 共享表空间存储_MySQL InnoDB共享表空间
  11. 最好用的手机端C/C++语言编程软件, 不要说没电脑就不学编程了!
  12. 浙江义乌计算机中专学校,浙江义乌有没有中专学校?
  13. php获取站点的根目录和站点的根URL
  14. WEB-INF下jsp页面如何访问
  15. java自动校准程序_java – VisualVM校准步骤与Windows 10挂起
  16. htmlspecialchars_decode 与 html_entity_decode
  17. it营Typescript学习笔记02(基础完结)模块,命名空间,装饰器
  18. linux命令(3) 链接ln和搜索locate,find, whereis, which, grep命令
  19. HUAWEI Mate bookD 加装固态
  20. oracle中md5算法,oracle数据库中存储过程使用MD5算法加密

热门文章

  1. 解决:网络风暴引起的无法ping通
  2. Maven下载及安装配置
  3. linux系统移植和根文件系统制作
  4. qt中如何刷新一下屏幕_感情维护:如何在恋爱关系中分开一下,然后更坚强地回来...
  5. java,python,scala发送http请求
  6. Spark2.1特征处理:提取/转换/选择
  7. 【紫书第十一章】图论模型与算法入门
  8. ftp文件传输有服务器吗,ftp文件传输有服务器吗
  9. 《WebGL编程指南》学习笔记——4.绘制一个点
  10. 【知识蒸馏】Distilling the Knowledge in a Neural Network