1、React路由介紹
現在我們來搞一搞React中的路由吧,別問我為什么這木喜歡用搞這個字,因為它比較深奧。
注意下面我們使用的是React-Router-DOM
React中的路由基本使用還是滿簡單的,零碎的小東西有點多,所以我直接把他們揉到一起做了一個小例子,代碼我都寫上注釋了,應該挺簡單易懂的
注意:以下所有操作均運行在搭好的React環境中
2、安裝react-router-dom
在項目命令行中,執行cnpm install react-router-dom -S
下載到生產環境的依賴中。
在組件中通過對象的解構方式去獲取到react-router-dom
仿照官網來個小案例(聲明式路由)
4.1、創建一個新的Baokuo.js文件,並在index.js中導入這個路由文件
4.2、創建好要跳轉的頁面
4.3、在Baokuo.js文件中粘貼官方的第一個路由案例;
1 import React from 'react' 2 import Home from './penter/Home' //因為在一個文件夾下面創建的,所以要找到准確位置。 3 import Text from './penter/Text' 4 import Hellow from './penter/Hellow' 5 import {BrowserRouter,HashRouter,Route,Link} from 'react-router-dom' 6 import {Button,DatePicker,Icon} from 'antd'; 7 import 'antd/dist/antd.css' 8 9 class Baokuo extends React.Component{ 10 11 render(){ 12 13 return ( 14 // 根容器 15 <HashRouter> 16 <div> 17 <h1>這是根目錄</h1> 18 <hr/> 19 {/* 鏈接 */} 20 <Link to="/home">首頁</Link> 21 <Link to="/text">新聞</Link> 22 <Link to="/hellow">關於我們</Link> 23 <hr/> 24 {/* 路由規則,Route是配置路由的規則,同時也是一個占位符 */} 25 <Route path="/home" component={Home} /> 26 <hr/> 27 <Route path="/text" component={Text}></Route> 28 <hr/> 29 <Route path="/hellow" component={Hellow}></Route> 30 </div> 31 {/* <DatePicker></DatePicker><Button type="primary" icon="twitter">點擊</Button> */} 32 </HashRouter> 33 ); 34 } 35 } 36 37 export default Baokuo;
1 總體的步驟分為三步: 2 配置路由的容器Router; 3 配置路由的連接LInk; 4 配置路由填充的位置以及路徑和組件的映射關系;:
5、嵌套路由
詳細可見https://blog.csdn.net/xiaodi520520/article/details/93336215 講解的比較清楚
5.1、嵌套路由的步驟
a.在父路由的組件中配置子路由;
b.子路由中同樣需要配置Link和Route;
6、帶參數路由和獲取參數;
方式:在路由的路徑中通過[:參數名稱]來進行傳遞,改參數在路由匹配的組件中通過[match.params.參數名]來獲取。
英文官網案例: