⊗jsrtPmRtDR 45 of 47 menu

Útvonal eltávolítása a React Routerban

Megírtuk az adatok törléséhez szükséges függvényt a tárolóból. Most adjuk hozzá a termék oldal elrendezéséhez a törlés gombját tartalmazó kódrészt. Helyezzük el közvetlenül a szerkesztés gombja után. Csomagoljuk mindkét gombot tartalmazó űrlapot egy #control div-be. Ezután az action értékébe írjuk be a 'delete' értéket. Hozzáadunk egy párbeszédablakot is, hogy a felhasználó megerősítse - biztosan törölni szeretné-e a terméket:

<div id="control"> <Form action="edit"> <button type="submit">szerkesztés</button> </Form> <Form method="post" action="delete" onSubmit={(event) => { if (!confirm('Biztosan törölni szeretnéd ezt a terméket?')) { event.preventDefault(); } }} > <button type="submit">törlés</button> </Form> </div>

Adjunk hozzá néhány stílust a CSS fájlunkhoz:

div#control { display: flex; } button { margin-right: 5px; }

Most pedig készítsünk egy új útvonalat a termék törléséhez. Ehnyomozd meg a routes mappát, és hozz létre benne egy delete.jsx fájlt. Adjuk hozzá azonnal az redirect importját és a törlő függvényt deleteProduct:

import { redirect } from 'react-router-dom'; import { deleteProduct } from '../forStorage';

Majd természetesen megírjuk a action függvényünket, amely meghívja a deleteProduct függvényt a id alapján, és a törlés után átirányít a főoldalra:

export async function action({ params }) { await deleteProduct(params.productId); return redirect('/'); }

Már csak meg kell nyitnunk a main.jsx fájlt. Importáljuk a action függvényünket:

import { action as deleteAction } from './routes/delete';

És beállítjuk értéknek a action tulajdonságához a törlés útvonalán. Magát az útvonal objektumot a children tömb végére adjuk hozzá:

{ path: 'products/:productId/delete', action: deleteAction, },

Most már rákattinthatunk valamelyik termékre, és törölhetjük azt a törlés gombbal. Beléphetsz a fejlesztői panel localforage-jébe, hogy meggyőződj erről.

Vedd elő azokat az alkalmazásokat, amelyeket az előző leckék feladataihoz készítettél. A lecke anyagát felhasználva adj hozzá törlés gombot a diák törléséhez, készíts új útvonalat a törléshez, add hozzá azt a gyermek útvonalakhoz. Győződj meg róla, hogy minden működik.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás