⊗jsrtPmRtAD 32 of 47 menu

Andmete lisamine React Routeris

Eelmistel tundidel valmistasime ette laadija ja andmete mahalaadimise kindlalt marsruudilt hoidlast. Tutvume nüüd meie rakenduse näitel, kuidas lisada uut toodet ja kirjutada selle andmed hoidlasse.

Avame faili root.jsx ja lisame maketti uue toote lisamise nupu enne nav, mähkides selle vormi sildisse. Samuti mähime nüüd nupu ja meie loendi veel ühte div-i #menu-ga. Makett näeb nüüd välja selline:

return ( <div id="main"> <div id="menu"> <form method="post"> <button type="submit">lisa toode</button> </form> {products.length ? ( <nav> {products.map((product) => ( <Link key={product.id} to={`products/${product.id}`}> {product.name ? product.name : <i>Nimetu</i>} </Link> ))} </nav> ) : ( <p> <i>siin pole tooteid ...</i> </p> )} </div> <div id="product"> <Outlet /> </div> </div> );

Kui me nüüd läheme vahekaardile 'Võrgu' arenduspaanil ja vajutame siis meie nupule, näeme veateadet dokumendi päringus serverile. Kasutades React Routerit, kasutame jälle kliendipoolset marsruutimist, välistades päringu serverile.

Teeme selleks muudatuse sildil form komponendile Form React Routerist. Lisame alustuseks impordi Form:

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

Nüüd asendame sildid form koodijupis:

<Form method="post"> <button type="submit">lisa toode</button> </Form>

Laadige meie rakendus uuesti ja vaadake jälle arenduspaanile. Vajutame toote lisamise nuppu - nüüd pole serverit päringut enam (ärge pöörake tähelepanu veale praegu).

Võtke rakendus, mille lõite ülesannetes eelmistele tundidele. Kasutades tunni materjale, parandage funktsiooni Root veebilehe kujundus, lisage nupp üliõpilase lisamiseks sildis form. Veenduge, et nupu vajutamisel tehakse serverile päring.

Ja nüüd asendage silt form, komponendiga Form. Veenduge, et üliõpilase lisamise nupu vajutamisel serverile päringut ei saadeta.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu