Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > Apakah yang perlu saya lakukan jika usestate in react tidak dipaparkan apabila menukar nilainya?

Apakah yang perlu saya lakukan jika usestate in react tidak dipaparkan apabila menukar nilainya?

WBOY
Lepaskan: 2022-04-29 17:48:59
asal
2852 orang telah melayarinya

Kaedah: 1. Gunakan "const [arr, setArr]=useState([change value])" untuk mengubah suai nilai State 2. Buat tatasusunan baharu dan tetapkan nilai tatasusunan asal kepada yang baharu tatasusunan. Dan gunakan "setState (tatasusunan baharu)" untuk mengubah suai Negeri dan menukar alamat yang ditunjukkan oleh tatasusunan asal dalam timbunan.

Apakah yang perlu saya lakukan jika usestate in react tidak dipaparkan apabila menukar nilainya?

Persekitaran pengendalian tutorial ini: Sistem Windows 10, bertindak balas versi 17.0.1, komputer Dell G3.

Apakah yang perlu saya lakukan jika usestate dalam React tidak dipaparkan apabila nilai berubah?

Pemantauan cetek lalai dalam React ialah apabila nilai State ialah objek, rujukan (alamat) daripada objek disimpan dalam tindanan, dan apa yang diubah oleh setState ialah Data dalam timbunan

Jadi selepas setArr(arr), alamat dalam tindanan masih alamat asalnya , jadi ia berpendapat Negeri tidak berubah, jadi ia tidak memaparkan semula halaman

Penyelesaian

Idea: Tukar alamat yang ditunjukkan oleh arr asal dalam tindanan

Contohnya adalah seperti berikut:

1) Tetapkan secara langsung (nilai yang akan diubah suai)

const [arr, setArr] = useState([])
setArr(1)
Salin selepas log masuk

2) Cipta tatasusunan baharu newArr, tetapkan nilai tatasusunan asal kepada tatasusunan baharu dan setState(newArr)

const [arr, setArr] = useState([])
const newArr = arr.slice(1)
setArr(newArr)
Salin selepas log masuk

Gunakan aksara pengembangan ES6

const [arr, setArr] = useState([])
setArr([...arr])
Salin selepas log masuk

Pembelajaran yang disyorkan: "tutorial video reaksi"

Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika usestate in react tidak dipaparkan apabila menukar nilainya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan