⊗jsrtPmRtDR 45 of 47 menu

Ուղղուի ջնջումը React Router-ում

Տվյալները պահեստից ջնջելու ֆունկցիան մենք գրել ենք: Եկեք հիմա էջի վերստում ավելացնենք ապրանքը ջնջելու կոճակով կոդի հատվածը: Ավելացնենք այն խմբագրման կոճակից անմիջապես հետո: Երկու կոճակներով ֆորմաները կփաթաթենք #control դիվի մեջ: Ապա action-ում կգրենք 'delete' արժեքը: Նաև կավելացնենք երկխոսության պատուհան, որպեսզի օգտագործողը ևս մեկ անգամ հաստատի՝ արդյոք նա ցանկանում է ջնջել ապրանքը:

<div id="control"> <Form action="edit"> <button type="submit">edit</button> </Form> <Form method="post" action="delete" onSubmit={(event) => { if (!confirm('Do you want to delete this product?')) { event.preventDefault(); } }} > <button type="submit">delete</button> </Form> </div>

Նաև ավելացնենք ոճեր մեր CSS ֆայլում:

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

Իսկ հիմա մենք կստեղծենք նոր ուղղի ապրանքը ջնջելու համար: Դրա համար բացեք routes պանակը և նրա մեջ ստեղծեք delete.jsx ֆայլը: Ավելացնենք դրա մեջ անմիջապես redirect-ի իմպորտը և ջնջման ֆունկցիան deleteProduct:

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

Իսկ հետո, բնականաբար, գրում ենք մեր action ֆունկցիան, որն կկանչի deleteProduct-ը ըստ id-ի, իսկ ջնջելուց հետո կվերահղի մեզ գլխավոր էջ:

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

Մեզ մնում է միայն բացել main.jsx-ը, իմպորտել մեր action-ը:

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

Եվ սահմանել այն որպես արժեք ջնջման ուղղու action մեթոդի համար: Ստեղծված ուղղու օբյեկտը մենք կավելացնենք children զանգվածի վերջում:

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

Հիմա մենք կարող ենք կլիկ անել որևէ ապրանքի վրա և ջնջել այն ջնջման կոճակի միջոցով: Կարող եք նայել մշակողի գործիքների localforage-ում և համոզվել դրանում:

Վերցրեք նախկին դասերին առաջադրանքներում ձեր ստեղծած հավելվածը: Օգտագործելով դասի նյութերը, ավելացրեք ուսանողին ջնջելու կոճակ, ստեղծեք ջնջման նոր ուղղի, ավելացրեք այն դուստր ուղղուների մեջ: Համոզվեք, որ ամեն ինչ աշխատում է:

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել