React-Routerv3到v4之后的变化以及一些坑

1 篇文章 0 订阅
1 篇文章 0 订阅

       RecatRouter4的使用事项

        由于博主最近在学习React的相关知识,遇到版本上的一些坑(教学课程版本跟我现在安装的版本不一样),加之我查找了很多这方面的博客,发现时间都有点久远。所以特此来跟大家分享一下我的踩坑经历。

     我现在使用的是 4.0,这个版本的路由是跟之前的用法有着比较大的区别的,React Router v4 是一个完整的重写

    下面就让我来跟大家介绍一下我踩过的坑:

     1.使用:

         页面中导入应用:

          import 'BrowserRouter,Route,Switch' from 'react-router-dom'

            <BrowserRouter>

                   <Switch>

                  <Route exact path="/" component={组件名}></Route>

                  <Route exact path="/" component={组件名}></Route>

                   </Switch>

            </BrowserRouter>
    注意:
          1.BrowserRouter 只能有一个子元素,你可以使用<Switch></Switch>,
    或者使用<div></div>将子元素包裹起来。不然会报错。
         2.Router 4以上 还需要在BrowserRouter 中加元素 exact严格限制
  path的匹配,不然的话,如path="/",Router将会把所有带'/'的
  路径匹配,然后报错。
         3.webpack.config.js中加入一下代码,可以让浏览器抛出的异常更加详细
   devServer: {
        disableHostCheck: true,
        historyApiFallback:true
      },
      4.Router 4以上接收页面传递的参数时的变化,
     之前:
        this.props.params.参数名
     之后:

        this.props.match.params.参数名

        以上就是我学习遇到的一些关于版本差异的坑,但是v3和v4的变迁不止我介绍的这几种,需要了解更多的可以去官网了解更多关于Router4的用法。

         官网地址:https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/guides/migrating.md

        这是我的心得,可能有哪些疏漏的地方。希望大神可以多多指点指点~嘻嘻

     


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值