Instalace React Router v Redux aplikaci
V předchozích lekcích jsme nainstalovali základní nástroje pro práci s Reduxem. Často se stává, že aplikace potřebuje směrovač pro navigaci mezi jejími webovými stránkami a naše aplikace nebude výjimkou. K tomuto účelu nainstalujeme knihovnu React Router.
Otevřeme náš projekt a v terminálu zadáme následující příkaz:
npm install react-router-dom
Předbíhám trochu čas, řeknu, že naše
Redux aplikace je tradičně věnována
produktům, o kterých informace zveřejňují
nějací prodejci. Proto nyní trochu
předěláme hlavní komponentu App, a
také přidáme do aplikace funkcionalitu pro
realizaci směrování.
Pro začátek zajdeme do složky src, poté
do app a zde vytvoříme soubor root.jsx. Toto
bude kořen našeho webu: vlevo budeme mít menu,
a vpravo - obsah (zatím zde máme
pouze nadpis):
function Root() {
return (
<div id="main">
<div id="menu">
<nav>
<a>Products</a>
<a>Sellers</a>
</nav>
</div>
<div id="main_page">
<h2>Toto je moje první Redux aplikace!</h2>
<hr></hr>
</div>
</div>
)
}
export default Root
A komponentu App předěláme. Pro začátek
kompletně smažeme její obsah. Poté
naimportujeme dvě funkce pro router a naši
kořenovou komponentu Root:
import { createBrowserRouter, RouterProvider } from 'react-router-dom'
import Root from './app/root'
Níže po importu vytvoříme router,
a napíšeme první trasu, předáme mu
naši Root jako zobrazovaný prvek
a, odpovídajícím způsobem, nastavíme cestu na '/'.
V budoucnu v App budeme přidávat i
další potřebné trasy:
const router = createBrowserRouter([{ path: '/', element: <Root /> }])
Níže napíšeme kód funkce App:
function App() {
return <RouterProvider router={router} />
}
export default App
Hotovo. Spustíme. V další části budeme realizovat komponenty pro práci Redux aplikace.
Na závěr přidáme trochu krásy, napíšeme pro
to styly v index.css:
body {
font-size: 24px;
line-height: 1.5;
}
nav {
display: flex;
flex-direction: column;
}
ul {
list-style: none;
padding: 0;
}
h1, h2, h3 {
margin: 0;
}
a {
text-decoration: none;
color: blue;
cursor: pointer;
}
#main {
display: flex;
margin: 20px;
}
#menu {
margin-right: 50px;
padding-top: 50px;
padding-right: 50px;
border-right: 2px solid lightgray;
font-weight: bold;
}
Přidejte React Router do vaší aplikace.
Nechť se vaše aplikace týká
studentů, o kterých informace budou
zveřejňovat učitelé. S ohledem na to,
vytvořte kořenovou komponentu Root.
Předělejte komponentu App jak
je popsáno v lekci.