⊗jsrxPmWFLS 15 of 57 menu

Borang dan Negeri Tempatan dalam Redux

Dalam pelajaran lepas, kita telah belajar untuk mendapatkan data dari store dan memaparkannya dalam komponen React. Dalam pelajaran ini, kita akan mula menambah data baru. Kita akan melakukannya menggunakan borang, yang setelah diisi, penjual boleh menambah produk baru.

Mari kita mulakan dengan hakikat bahawa tidak selalu masuk akal untuk menggunakan negeri global Redux. Ada kalanya, untuk keperluan kita, kita boleh mencipta negeri temptan. Kita akan memanggil negeri tempatan sebagai negeri yang digunakan di dalam komponen tertentu untuk keperluan teknikal. Sebagai contoh, untuk menyembunyikan atau menunjukkan sesuatu dengan butang.

Dalam kes kami, pengguna akan memasukkan data ke dalam borang dan, sememangnya, kita akan memerlukan negeri untuk ini. Kita boleh menggunakan negeri global Redux, tetapi ini tidak perlu, kerana negeri kita hanya akan berfungsi di satu tempat aplikasi untuk borang penambahan produk. Peraturan utama yang perlu diikuti - negeri tempatan tidak boleh berfungsi di luar komponen di mana ia dicipta, dan dalam apa jua keadaan tidak boleh menyentuh store. Amalan sedemikian sering digunakan semasa mencipta borang.

Mari buka folder products bagi aplikasi produk kami, buat fail NewProductForm.jsx di dalamnya dan import hook useState:

import { useState } from 'react'

Sekarang mari kita cipta komponen borang itu sendiri dan tulis di dalamnya negeri biasa, seperti yang kita lakukan sebelum ini dalam React. Kita perlukan negeri untuk bekerja dengan nama, keterangan, harga dan kuantiti produk:

export const NewProductForm = () => { const [name, setName] = useState('') const [desc, setDesc] = useState('') const [price, setPrice] = useState(0) const [amount, setAmount] = useState(0) }

Seterusnya, tambahkan pemprosesan standard untuk setiap medan apabila pengguna memasukkan data:

const onNameChanged = (e) => setName(e.target.value) const onDescChanged = (e) => setDesc(e.target.value) const onPriceChanged = (e) => setPrice(e.target.value) const onAmountChanged = (e) => setAmount(e.target.value)

Dan kemudian kembalikan dalam komponen markup dengan tajuk dan borang kosong:

return ( <div> <h2>Tambah Produk Baru</h2> <form> </form> </div> )

Buka aplikasi pelajar anda. Buat fail NewStudentForm.jsx dalam folder students. Tetapkan dalam komponen NewStudentForm negeri tempatan untuk medan yang diperlukan oleh anda, tulis untuk setiap medan pemprosesan, seperti yang ditunjukkan dalam pelajaran.

Kembalikan dalam komponen NewStudentForm markup yang mengandungi tajuk dan borang kosong.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak