Instalasi React Router

- Buatlah sebuah proyek baru menggunakan create-react-app
- Pindah direktori ke direktori proyek yang telah dibuat
- Instalasi react-router-dom menggunakan npm atau yarn

React Router
Terdapat 3 kategori dari komponen dalam React Router:
Routers
Inti dari setiap aplikasi yang menggunakan React Router haruslah komponen dengan tipe Router.
Route Matchers
Route Matchers
- Routers, seperti <BrowserRouter> dan <HashRouter>
- Route Matchers, seperti <Route> dan <Switch>
- Navigation, seperti <Link>, <NavLink> dan <Redirect>
- Semua komponen ini dapat diimpor dari react-router-dom
Inti dari setiap aplikasi yang menggunakan React Router haruslah komponen dengan tipe Router.
- <BrowserRouter>
- menggunakan path URL regular
- contoh: http://example.com/shop/item
- <HashRouter>
- menyimpan lokasi dengan hash pada URL
- contoh: http://example.com/shop.html#cart
- Terdapat 2 komponen route matcher yaitu <Switch> dan <Route>
- Ketika <Switch> di render, maka akan dicari elemen <Route> yang memiliki path yang paling cocok dengan URL saat ini
- Bila ditemukan, aplikasi akan langsung me-render <Route> yang sesuai dan mengabaikan elemen <Route> yang lainnya
- Bila tidak ditemukan, maka <Switch> akan mengembalikan nilai null
Tips:
Navigation
Terdapat 3 jenis Navigation
Kesimpulan
- Letakkan <Route> dengan path yang lebih spesifik sebelum <Route> yang memiliki path lebih umum
- <Route path=“/”> akan match dengan seluruh path, sehingga perlu diletakkan di bagian paling akhir. Alternatifnya, bisa gunakan <Route exact path=“/”>
- Meskipun <Router> dapat dirender di luar <Switch>, tetap gunakan hook useRouteMatch
Terdapat 3 jenis Navigation
- <Link> - komponen ini akan merender tag <a> ke dokumen HTML
- <NavLink> - komponen mendukung style “active” ketika propertinya cocok dengan lokasi saat ini
- <Redirect> - komponen yang akan memaksa aplikasi untuk navigasi ke lokasi lain
React Router merupakan modul untuk menangani navigasi tampilan
Sumber Referensi : reactjs.org | reactrouter
| tutorialspoint
| w3schools