Adakah setiap atribut memerlukan pengurang?
P粉124070451
2023-08-17 14:47:45
<p>Saya mengikuti tutorial ini untuk menambah nombor. </p>
<p>Ia berfungsi, tetapi sekarang saya mahu melaksanakannya kepada kira-kira 100 nilai konfigurasi. Adakah saya perlu menyalin counterSlice.js 100 kali atau adakah saya perlu menggantikan nombor dengan objek dengan 100 sifat? </p>
<p>counterSlice.js</p>
<pre class="brush:php;toolbar:false;">eksport const counterSlice = createSlice({
nama: 'kaunter',
keadaan awal: {
nilai: 0,
},
pengurang: {
kenaikan: (nyatakan) =>
// Redux Toolkit membolehkan kami menulis logik "pengubahsuaian" dalam pengurang. Ia sebenarnya tidak mengubah keadaan kerana ia menggunakan perpustakaan Immer,
// Ia mengesan perubahan kepada "keadaan draf" dan menjana keadaan tidak berubah serba baharu berdasarkan perubahan tersebut.
// Selain itu, fungsi ini tidak memerlukan penyata pulangan.
keadaan.nilai += 1
},
penurunan: (nyatakan) =>
state.value -= 1
},
incrementByAmount: (nyatakan, tindakan) =>
state.value += action.payload
},
},
})
// Hasilkan pencipta tindakan untuk setiap fungsi pengurangan kes
export const { increment, decrement, incrementByAmount } = counterSlice.actions
eksport lalai counterSlice.reducer</pre>
<p><br /></p>
Dalam sesetengah kes, mungkin bijak untuk mencipta fungsi secara eksplisit untuk setiap medan status. Tetapi jika anda mempunyai sekitar 100 medan status, maka anda perlu mengambil pendekatan yang lebih umum.
Saya mengesyorkan memasukkan medan
key
和value
dalam muatan fungsi pengurang.