Adakah setiap atribut memerlukan pengurang?
P粉124070451
P粉124070451 2023-08-17 14:47:45
0
1
417
<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>
P粉124070451
P粉124070451

membalas semua(1)
P粉404539732

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 keyvalue dalam muatan fungsi pengurang.

export const configSlice = createSlice({
  name: 'config',
  initialState: {},
  reducers: {
    setConfigValue: (state, action) => {
      const { key, value } = action.payload;

      state[key] = value;
    },
  },
})

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!