浅谈react-router HashRouter和BrowserRouter的使用


Posted in Javascript onDecember 29, 2017

官网推荐的是BrowserRouter,但是此方式需要服务器配合,而且有点不好的是重定向只能到首页,无法停留在当前页,具体用法很简单,举例说明。

HashRouter

//react-router要求只只有一个字节点
//router内部的Link和Route会一一匹配,匹配到则加载对应的组件
//to 和 Route 的path是一样的(除了/结尾)
//比如点击关于我们to="/aboutUs"对应path="/aboutUs/",这样它就去加载AboutUs这个组件,其他组件没加载
//相比用state和回调实现,这种方式更为简单明了,而且浏览前进后退功能都支持
<HashRouter>
  <div id="wrapper">
    <Header />
    <ul className="nav navbar-nav">
      <li><Link to="/">首页</Link></li>
      <li><Link to="/classifiedDisplay">分类展示</Link></li>
      <li><Link to="/boutiqueCase">精品案例</Link></li>
      <li><Link to="/aboutUs">关于我们</Link></li>
    </ul>
    <Route exact path="/" component={Home}/>
    <Route exact path="/classifiedDisplay/" component={TypeShow}/>
    <Route exact path="/boutiqueCase/" component={JpShow}/>
    <Route exact path="/aboutUs/" component={AboutUs}/>
    <Footer />
  </div>
</HashRouter>

BrowserRouter

前端

同上方代码,只是把HashRouter换成了BrowserRouter组件。

服务器

以apache为例,.htaccess添加重写规则。(需先开启可重写设置)

#配和react-router,自行忽略写的比较low的正则
RewriteEngine on
RewriteRule classifiedDisplay$ http://www.yangqingcheng.xin/
RewriteRule boutiqueCase$ http://www.yangqingcheng.xin/
RewriteRule aboutUs$ http://www.yangqingcheng.xin/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery ajax提交表单数据的两种实现方法
Apr 29 Javascript
15 个 JavaScript Web UI 库
May 19 Javascript
ie中js创建checkbox默认选中问题探讨
Oct 21 Javascript
javascript监听鼠标滚轮事件浅析
Jun 05 Javascript
setTimeout()递归调用不加引号出错的解决方法
Sep 05 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
Aug 05 Javascript
jquery dialog获取焦点的方法
Feb 09 Javascript
使用 vue.js 构建大型单页应用
Feb 10 Javascript
Js中使用正则表达式验证输入是否有特殊字符
Sep 07 Javascript
layer插件实现在弹出层中弹出一警告提示并关闭弹出层的方法
Sep 24 Javascript
JavaScript 替换所有匹配内容及正则替换方法
Feb 12 Javascript
js在HTML的三种引用方式详解
Aug 29 Javascript
javaScript 连接打印机,打印小票的实例
Dec 29 #Javascript
深入浅析vue组件间事件传递
Dec 29 #Javascript
详解Vue 事件修饰符capture 的使用
Dec 29 #Javascript
react-router browserHistory刷新页面404问题解决方法
Dec 29 #Javascript
node简单实现一个更改头像功能的示例
Dec 29 #Javascript
JavaScript 中使用 Generator的方法
Dec 29 #Javascript
js中url对象化管理分析
Dec 29 #Javascript
You might like
使用php判断服务器是否支持Gzip压缩功能
2013/09/24 PHP
PHP empty函数报错解决办法
2014/03/06 PHP
在Mac上编译安装PHP7的开发环境
2015/07/28 PHP
利用PHP获取网站访客的所在地位置
2017/01/18 PHP
js同时按下两个方向键
2007/12/01 Javascript
JQuery1.6 使用方法三
2011/11/23 Javascript
JavaScript—window对象使用示例
2013/12/09 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
2014/05/04 Javascript
AngularJS入门教程之Hello World!
2014/12/06 Javascript
js实现星星打分效果的方法
2020/07/05 Javascript
JS设置cookie、读取cookie
2016/02/24 Javascript
javascript求日期差的方法
2016/03/02 Javascript
jquery实现网页定位导航
2016/08/23 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
浅谈React和Redux的连接react-redux
2017/12/04 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
element-ui table span-method(行合并)的实现代码
2018/12/20 Javascript
vue图片上传本地预览组件使用详解
2019/02/20 Javascript
javascript事件监听与事件委托实例详解
2019/08/16 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
2019/08/28 Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
2019/12/25 jQuery
[03:01]完美盛典趣味短片 DOTA2年度最佳&拉胯英雄
2019/12/07 DOTA
Python面向对象之继承代码详解
2018/01/29 Python
python列表list保留顺序去重的实例
2018/12/14 Python
对pytorch中的梯度更新方法详解
2019/08/20 Python
Python3 中作为一等对象的函数解析
2019/12/11 Python
python asyncio 协程库的使用
2021/01/21 Python
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
HTML5新特性之用SVG绘制微信logo
2016/02/03 HTML / CSS
广告设计专业自荐信范文
2013/11/14 职场文书
教师竞聘上岗演讲稿
2014/09/03 职场文书
2015国庆节感想
2015/08/04 职场文书
青年文明号创建口号大全
2015/12/25 职场文书
《我们的民族小学》教学反思
2016/02/19 职场文书
Spark SQL 2.4.8 操作 Dataframe的两种方式
2021/10/16 SQL Server