⊗jsrtPmRtRd 41 of 47 menu

Presmerovanie na inú trasu v React Router

Teraz sa údaje zadané do formulára pri editácii produktu ukladajú, ale je jedno ALE - po uložení údajov zostávame na stránke s formulárom, a my sa musíme dostať späť na stránku produktu. S tým nám pomôže presmerovanie, s ktorým sa zoznámime v tejto lekcii.

Otvorme súbor edit.jsx a importujme redirect z knižnice:

import { redirect } from 'react-router-dom';

A potom urobme to, že funkcia action bude teraz vracať nie 1, ale presmeruje nás na požadovanú trasu. V tomto prípade je potrebné sa vrátiť späť na stránku s produktom:

return redirect(`/products/${params.productId}`);

Teraz, kliknutím na tlačidlo uloženia, sa dostaneme späť na stránku produktu s aktualizovanými údajmi.

To isté môžeme urobiť aj pre pridanie nového produktu, pretože bolo by pravdepodobne pohodlnejšie okamžite prejsť na formulár a vyplniť ho. Urobme to tak.

Na začiatok je teraz potrebné otvoriť súbor root.jsx a importovať redirect, pretože pridanie produktov prebieha na koreňovej stránke:

import { redirect } from 'react-router-dom';

Znova vezmeme funkciu action a teraz budeme vracať nie product, ale urobíme presmerovanie na stránku editácie:

return redirect(`/products/${product.id}/edit`);

Skontrolujme aj to. Kliknime teraz na tlačidlo pridania produktu a uvidíme formulár pre jeho editáciu.

Vezmite aplikáciu vytvorenú vami v úlohách k minulým lekciám. Použitím materiálov lekcie, implementujte v nej presmerovanie na stránku študenta po stlačení tlačidla uloženia údajov na stránke s formulárom.

A teraz implementujte presmerovanie z hlavnej stránky na stránku s formulárom editácie údajov študenta po kliknutí na tlačidlo pridania študenta do zoznamu.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť