React:react-router-dom 詳解

使用react構建單頁面應用:javascript

  實現方法:(1)react-routerjava

       (2)react-router-domreact

react-router: 實現了路由的核心功能,而react-router-dom依賴react-router,react-native

react-router-dom: 基於react-router,加入了在瀏覽器運行環境下的一些功能:瀏覽器

          Link組件,會渲染一個a標籤;react-router

          BrowserRouter組件,使用pushStatepopState事件構建路由;dom

          HashRouter組件,使用window.location.hashhashchange事件構建路由。函數

          react-router-native: 基於react-router,相似react-router-dom,加入了react-native運行環境下的一些功能。spa

react-router-dom路由詳解:3d

    靜態路由:

          

 

 

 而後咱們在index.js中引入路由組件進行渲染:

          

 

 

 咱們可使用a標籤或Link組件進行路由的跳轉,Link從react-router-dom引入;

                 

  動態路由傳參:

    第一種:在組件的路由後面加/:id;

    

     而後咱們在對應組件Detail中修改代碼來進行獲取ID:

     

   第二種:

    隱式傳參(經過函數跳轉):

      

 

     

 

 重複使用push或a標籤跳轉會產生死循環,爲了不這種狀況出現,react-router-dom提供了replace。在可能會出現死循環的地方使用replace來跳轉:  

    

 

 返回上級頁面使用:

    

相關文章
相關標籤/搜索