浅谈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 相关文章推荐
jMessageBox 基于jQuery的窗口插件
Dec 09 Javascript
jquery下jstree简单应用 - v1.0
Apr 14 Javascript
JS获取iframe中longdesc属性的方法
Apr 01 Javascript
jQuery+ajax实现无刷新级联菜单示例
May 21 Javascript
基于jquery实现复选框全选,反选,全不选等功能
Oct 16 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
Oct 10 Javascript
Vue.js基础知识小结
Jan 13 Javascript
Bootstrap 3 进度条的实现
Feb 22 Javascript
javascript简单写的判断电话号码实例
May 24 Javascript
vue2.0在table中实现全选和反选的示例代码
Nov 04 Javascript
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
Apr 13 Javascript
vuejs实现下拉框菜单选择
Oct 23 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简单的伪原创程序,配合商城采集用的
2010/10/12 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
PHP实现二维数组去重功能示例
2017/01/12 PHP
PHP环形链表实现方法示例
2017/09/15 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
javascript window对象属性整理
2009/10/24 Javascript
IE6图片加载的一个BUG解决方法
2010/07/13 Javascript
js window.print实现打印特定控件或内容
2013/09/16 Javascript
javascript面向对象程序设计(一)
2015/01/29 Javascript
jQuery实用技巧必备(下)
2015/11/03 Javascript
JavaScript刷新页面的几种方法总结
2019/03/28 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
2020/02/24 Javascript
JS数据类型(基本数据类型、引用数据类型)及堆和栈的区别分析
2020/03/04 Javascript
vue3使用vue-count-to组件的实现
2020/12/25 Vue.js
element 动态合并表格的步骤
2020/12/31 Javascript
Python解决鸡兔同笼问题的方法
2014/12/20 Python
使用Python的Django和layim实现即时通讯的方法
2018/05/25 Python
Python实现按逗号分隔列表的方法
2018/10/23 Python
python全局变量引用与修改过程解析
2020/01/07 Python
HTML5中indexedDB 数据库的使用实例
2017/05/11 HTML / CSS
好药师网上药店:安全合法的网上药品零售药房
2017/02/15 全球购物
阿里云:Aliyun.com
2017/02/15 全球购物
Skyscanner新西兰:全球领先的旅游搜索网站
2019/08/26 全球购物
Ajax和javascript的区别
2013/07/20 面试题
装修设计师求职信
2014/02/26 职场文书
《七颗钻石》教学反思
2014/02/28 职场文书
初中生期末评语大全
2014/04/24 职场文书
我的理想演讲稿
2014/04/30 职场文书
单位承诺书格式
2014/05/21 职场文书
企业活动策划方案
2014/06/02 职场文书
合伙购房协议样本
2014/10/06 职场文书
信用卡收入证明范本
2015/06/12 职场文书
2015年物流客服工作总结
2015/07/27 职场文书
老兵退伍感言
2015/08/03 职场文书
食堂管理制度范本
2015/08/04 职场文书