Rumah > Artikel > hujung hadapan web > Bagaimanakah Saya Boleh Mengemas kini Item Tunggal dalam Medan Tatasusunan dalam Firestore?
Mengemas kini Item Tunggal dalam Medan Tatasusunan dalam Firestore
Anda mempunyai medan tatasusunan dipanggil item dalam dokumen Firestore dan anda mahu kemas kini medan dalam salah satu objek dalam tatasusunan.
Percubaan Awal
Percubaan awal anda menggunakan kod berikut:
const key = `items.${this.state.index}.meta.description` const property = `hello bar`; this.design.update({ [key]: property }) ...
Walau bagaimanapun , ini mengalih keluar keseluruhan objek pada indeks tatasusunan yang ditentukan, hanya meninggalkan medan penerangan.
Percubaan Diubah Suai
Percubaan anda yang diubah suai menggunakan kod berikut:
const key = `items.${this.state.index}.meta` const property = e.target.value; let meta = this.state.meta; meta[e.target.id] = property; this.design.update({ [key]: meta }) ...
Ini seolah-olah menukar tatasusunan item kepada objek, kehilangan struktur tatasusunan.
Penghadan Firestore
Firestore mempunyai had dalam mengemas kini medan tatasusunan. Ia hanya membenarkan menambah atau mengalih keluar elemen, bukan mengubah suai yang sedia ada.
Penyelesaian
Untuk mengubah suai item dalam medan tatasusunan, anda perlu membaca keseluruhan tatasusunan, buat perubahan yang diperlukan dalam memori, dan kemudian kemas kini keseluruhan medan tatasusunan yang diubah suai.
const items = this.design.get("items"); // Read the array field items[this.state.index].meta.description = "hello bar"; // Modify the item this.design.update({ items: items // Update the entire modified array }) ...
Dengan menggunakan pendekatan ini, anda boleh mengemas kini item tertentu dalam medan tatasusunan tanpa kehilangan struktur tatasusunan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengemas kini Item Tunggal dalam Medan Tatasusunan dalam Firestore?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!