怎么在react中對路由進行配置?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
包含了LInk跳轉以及js觸發跳轉并傳參。
這是項目的目錄結構,主要的代碼都在src目錄下,src下面新建一個containers文件夾放我們的一些組件,router文件夾是配置路由用的。
按照順序來寫:detail文件夾下的代碼
import React from 'react' class Detail extends React.Component { render() { return ( <p>Detail,url參數:{this.props.params.id}</p> ) } } export default Detail
home:
import React from 'react' import { Link } from 'react-router' class Home extends React.Component { render() { return ( <div> <p>Home</p> <Link to="/list">to list</Link> </div> ) } } export default Home
list:
import React from 'react' import { hashHistory } from 'react-router' class List extends React.Component { render() { const arr = [1, 2, 3] return ( <ul> {arr.map((item, index) => { return <li key={index} onClick={this.clickHandler.bind(this, item)}>js jump to {item}</li> })} </ul> ) } clickHandler(value) { hashHistory.push('/detail/' + value) } } export default List
404yemian:
import React from 'react' class NotFound extends React.Component { render() { return ( <p>404 NotFound</p> ) } } export default NotFound
在containers下面有一個app.jsx總入口文件:
import React from 'react' class App extends React.Component { render() { return ( <div>{this.props.children}</div> ) } } export default App
router文件夾下的:
import React from 'react' import { Router, Route, IndexRoute } from 'react-router' import App from '../containers/App' import Home from '../containers/Home' import List from '../containers/List' import Detail from '../containers/Detail' import NotFound from '../containers/NotFound' class RouteMap extends React.Component { updateHandle() { console.log('每次router變化之后都會觸發') } render() { return ( <Router history={this.props.history} onUpdate={this.updateHandle.bind(this)}> <Route path='/' component={App}> <IndexRoute component={Home}/> <Route path='list' component={List}/> <Route path='detail/:id' component={Detail}/> <Route path="*" component={NotFound}/> </Route> </Router> ) } } export default RouteMap
最終最外層的index.js:
import React from 'react' import { render } from 'react-dom' import { hashHistory } from 'react-router' import RouteMap from './src/router/routeMap' render( <RouteMap history={hashHistory}/>, document.getElementById('App') )
使用的router版本是^2.8.1,如果下載的是4.0以上的版本,那么寫法就和現在的幾乎是完全不一樣,他做了很大的改動,配置的時候注意router的版本號。
看完上述內容,你們掌握怎么在react中對路由進行配置的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯成都網站建設公司行業資訊頻道,感謝各位的閱讀!
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網站標題:怎么在react中對路由進行配置-創新互聯
文章出自:http://vcdvsql.cn/article36/eiepg.html
成都網站建設公司_創新互聯,為您提供移動網站建設、軟件開發、App開發、靜態網站、動態網站、企業網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯