Я предпочитаю использовать response-router-dom . Особенно если вы разрабатываете для браузера.
Я обычно объявляю свой BrowserRouter (как Маршрутизатор) в моем index.js и оборачиваю его вокруг моего компонента приложения следующим образом:
index.js
import React from 'react'
import ReactDOM from 'react-dom'
import { BrowserRouter as Router } from 'react-router-dom'
ReactDOM.render(
<Router>
<App />
</Router>
document.getElementById('root')
);
Затем я вызываю компонент Route из response-router-dom в моем компоненте App.js и объявляю его в начале моего файла, например:
App.js
import { Route } from 'react-router-dom'
// IMPORT COMPONENTS
class App extends Component {
render() {
return (
<div className="App">
<Route exact path='/' component={ HomePage }/>
<Route exact path='/home' component={ HomePage }/>
<Route exact path='/discover' component={ Discover }/>
<Route exact path='/purchase' component={ Purchase }/>
</div>
);
}
}
После того, как вы это сделаете, вы можете направить из каждого компонента, используя компонент Link Также предоставлено response-router-dom.
Пример компонента (HomePage.js)
import { Link } from 'react-router-dom'
class HomePage extends Component {
render() {
return (
<div className='HomePage'>
<p>Press the button below to route to our Discovery page!</p>
<Link to='/discover'>
<button>Press me</button>
</Link>
</div>
);
}
}
Это просто базовый пример. Вы можете найти больше информации и опций прямо здесь или там Github page .