⊗jsrtPmRtADA 34 of 47 menu

React Router'da action Metodu ile Veri Ekleme

Bu derste, route nesnesinin action metodu ile tanışacağız. Bu metot, uygulamanızın route'una POST, PUT, PATCH veya DELETE (GET hariç) gibi bir HTTP isteği gönderdiğinde çağrılır.

Başlangıç olarak, bir önceki derste yazdığımız ürün oluşturma fonksiyonunu root.jsx dosyamıza içe aktaralım:

import { createProduct } from '../forStorage';

Şimdi, React Router'ın ürün ekleme butonuna tıklandığında çağıracağı action fonksiyonunu oluşturmamız gerekiyor, onu loader fonksiyonundan sonra yerleştirelim:

export async function action() { const product = await createProduct(); return { product }; }

Hadi main.jsx dosyasını açalım ve action'ı içe aktaralım:

import Root, { loader as rootLoader, action as rootAction } from './routes/root';

Ve onu route nesnesinin action metodu değeri olarak ayarlayalım. Form bileşeni, butona tıklandığında tarayıcının sunucuya istek göndermesine izin vermeyecek, bunun yerine route'umuzun action metoduna başvuracaktır. React Router ile istemci tarafı routing'i bu şekilde ilginç bir şekilde çalışır:

const router = createBrowserRouter([ { path: '/', element: <Root />, errorElement: <ErrorPage404 />, loader: rootLoader, action: rootAction, children: [ { path: 'products/:productId', element: <Product />, }, ], }, ]);

Uygulamamızı çalıştıralım. Geliştirici panelinde 'Uygulama' sekmesini (Chrome için Application) açalım, farklı depolama türleri arasında indexedDB'ye tıklayalım, burada bizi localforage ilgilendiriyor. Şimdi uygulamamızda ürün ekleme butonuna tıklayıp ardından localforage depolama alanını yenilediğimizde, products dizisine farklı id değerlerine sahip nesnelerin eklendiğini görüyoruz. Zafer!!! Bu, depolama alanımıza kayıtların eklendiği anlamına gelir! Tabii ki uygulamamızdaki liste de güncelleniyor. İpucu: daha sonra Application sekmesindeki 'Storage' bölümünde bu sayfanın kaydettiği verileri temizlemeyi unutmayın.

Önceki derslerin ödevlerinde oluşturduğunuz uygulamayı alın. Ders materyallerinden faydalanarak bir action fonksiyonu oluşturun, onu kök route nesnesine action metodu olarak ekleyin.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet