zoukankan      html  css  js  c++  java
  • React:react-router-dom 详解

    使用react构建单页面应用:

      实现方法:(1)react-router

           (2)react-router-dom

    react-router: 实现了路由的核心功能,而react-router-dom依赖react-router,

    react-router-dom: 基于react-router,加入了在浏览器运行环境下的一些功能:

              Link组件,会渲染一个a标签;

              BrowserRouter组件,使用pushStatepopState事件构建路由;

              HashRouter组件,使用window.location.hashhashchange事件构建路由。

              react-router-native: 基于react-router,类似react-router-dom,加入了react-native运行环境下的一些功能。

    react-router-dom路由详解:

        静态路由:

              

     然后我们在index.js中引入路由组件进行渲染:

              

     我们可以使用a标签或Link组件进行路由的跳转,Link从react-router-dom引入;

                     

      动态路由传参:

        第一种:在组件的路由后面加/:id;

        

         然后我们在对应组件Detail中修改代码来进行获取ID:

         

       第二种:

        隐式传参(通过函数跳转):

          

         

     重复使用push或a标签跳转会产生死循环,为了避免这种情况出现,react-router-dom提供了replace。在可能会出现死循环的地方使用replace来跳转:  

        

     返回上级页面使用:

        

         
     

        

        

  • 相关阅读:
    SpringBoot实现原理
    常见Http状态码大全
    forward(转发)和redirect(重定向)有什么区别
    1094. Car Pooling (M)
    0980. Unique Paths III (H)
    1291. Sequential Digits (M)
    0121. Best Time to Buy and Sell Stock (E)
    1041. Robot Bounded In Circle (M)
    0421. Maximum XOR of Two Numbers in an Array (M)
    0216. Combination Sum III (M)
  • 原文地址:https://www.cnblogs.com/lovels/p/11574700.html
Copyright © 2011-2022 走看看