您好,登錄后才能下訂單哦!
這篇文章主要介紹了react路由如何安裝的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇react路由如何安裝文章都會有所收獲,下面我們一起來看看吧。
react路由的安裝方法:1、通過“npm i react-router-dom@5.0 -S”安裝路由;2、使用“import { HashRouter as Router, Route, NavLink } from 'react-router-dom'”方式導入路由即可。
react 路由安裝及簡單使用
一.react安裝路由
安裝:npm i react-router-dom@5.0 -S (最新版本為6.0)
導入:
import { HashRouter as Router, Route, NavLink } from 'react-router-dom'
路由配置:
1.所有路由相關內容都應該放在<Router>組件內
2.鏈接使用:<NavLink to="地址">
3.頁面使用:<Route path="地址" component={組件}>
示例:簡單的路由跳轉
function App() {
return (<Router>
<div>
//exact 精確匹配
<NavLink to='/' exact>首頁</NavLink>|
<NavLink to='/about' >關于</NavLink>
</div>
{/* 路由頁面 */}
<Switch>
<Route path="/" exact component={Home}></Route>
<Route path="/about" component={About}></Route>
</Switch>
</Router>)
}
export default App
function Home() {
return <div>首頁頁面</div>
}
function About() {
return <div>
關于頁面
</div>
}
二.路由傳參
路由傳參形式
1.鏈接傳參 <NavLink to="/produce/abc">
2.參數傳參 <Route path="/produce/:id">
3.參數獲取 props.match.params.id
常用歷史操作的方法
1.go()歷史跳轉記錄
2.goBack(返回)
3.push()添加記錄跳轉
4.replace()替換記錄并跳轉
示例:
import { HashRouter as Router, Route, NavLink, Redirect, Switch, Prompt, Link } from 'react-router-dom'
// NavLink 會比 link自動添加一個active的class
function App() {
return (<Router>
<div>
<NavLink to='/' exact>首頁</NavLink>|
<NavLink to='/about' >關于</NavLink>
<NavLink to='/produce/abc'>產品abc</NavLink>
<NavLink to='/produce/123'>產品123</NavLink>
</div>
{/* 路由頁面 */}
<Switch>
<Route path="/" exact component={Home}></Route>
<Route path="/about" component={About}></Route>
<Route path="/produce/:id" component={Produce}></Route>
</Switch>
</Router>)
}
export default App
function Produce({ match, history, location }) {
// console.log(match);
return (<div>
<h2>產品{match.params.id}</h2>
<button onClick={() => history.goBack()}>返回</button>
<button onClick={() => history.push('/')}>回到首頁</button>
</div>)
}
function Home() {
return <div>首頁頁面</div>
}
function About() {
return <div>關于頁面
</div>
}
子路由傳參
示例:
// 導入路由相關組件
// 導入哈希路由 別名router
// Route路由頁面
// NvaLink 導航鏈接
import { HashRouter as Router, Route, NavLink, Redirect, Switch, Prompt, Link } from 'react-router-dom'
// NavLink 會比 link自動添加一個active的class
function App() {
return (<Router>
<div>
<NavLink to='/' exact>首頁</NavLink>|
<NavLink to='/about' >關于</NavLink>
<NavLink to='/produce/abc'>產品abc</NavLink>
<NavLink to='/produce/123'>產品123</NavLink>
<NavLink to='/admin'>管理</NavLink>
</div>
{/* 路由頁面 */}
<Switch>
<Route path="/" exact component={Home}></Route>
<Route path="/about" component={About}></Route>
<Route path="/produce/:id" component={Produce}></Route>
<Route path="/admin" component={Admin}></Route>
</Switch>
</Router>)
}
export default App
function NoMatch({ location, history }) {
return (<div>
<h2>404</h2>
<p>你爹來咯</p>
<p>{location.url}</p>
<button onClick={history.goBack}>后退</button>
<NavLink to={{ pathname: "/" }}>首頁</NavLink>
</div>)
}
function Admin() {
return (<div style={{ "display": "flex" }}>
<div style={{ width: "200px", boderRight: "1px solid #f0f0f0" }}>
<NavLink to="/admin/dash">概覽</NavLink><br />
<NavLink to="/admin/orderlist">列表</NavLink>
</div>
<div>
<Route path="/admin/dash" component={Dash}></Route>
<Route path="/admin/orderlist" component={OrderList}></Route>
<Redirect path='/admin' to="/admin/dash"></Redirect>
</div>
</div>)
}
function Dash() {
return (<div>
概覽
</div>)
}
function OrderList() {
return (<div>
訂單列表
</div>)
}
function Produce({ match, history, location }) {
// console.log(match);
return (<div>
<h2>產品{match.params.id}</h2>
<button onClick={() => history.goBack()}>返回</button>
<button onClick={() => history.push('/')}>回到首頁</button>
</div>)
}
function Home() {
return <div>首頁頁面</div>
}
function About() {
return <div>關于頁面
</div>
}
關于“react路由如何安裝”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“react路由如何安裝”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。