Rumah >hujung hadapan web >tutorial js >Cara Mengemas kini Tatasusunan dalam Firestore Tanpa Tulis Ganti: Panduan untuk `arrayUnion` dan `arrayRemove`
Mengemas Kini Tatasusunan dalam Firestore dengan Mudah
Apabila bekerja dengan Firestore, anda mungkin menghadapi keperluan untuk mengemas kini tatasusunan dalam dokumen. Walaupun ini mungkin kelihatan seperti tugas yang mudah, untuk mencapainya dengan sempurna memerlukan pemahaman tentang keupayaan khusus Firestore.
Secara tradisinya, percubaan untuk mengemas kini tatasusunan menggunakan teknik seperti .set() dengan merge: true atau .update() selalunya terhasil. dalam menimpa kandungan tatasusunan. Walau bagaimanapun, Firestore kini menawarkan dua fungsi elegan yang memberi anda kuasa untuk menambah dan mengalih keluar elemen tatasusunan dengan lancar:
Sebagai contoh, katakan anda mempunyai dokumen dengan struktur berikut:
{ proprietary: "John Doe", sharedWith: [ {who: "[email protected]", when: timestamp}, {who: "[email protected]", when: timestamp}, ], }
Untuk menambah entri baharu pada tatasusunan sharedWith, anda boleh menggunakan sintaks berikut:
<code class="javascript">firebase.firestore() .collection('proprietary') .doc(docID) .update({ sharedWith: firebase.firestore.FieldValue.arrayUnion( {who: "[email protected]", when: new Date()} ) });</code>
Begitu juga, untuk mengalih keluar elemen daripada tatasusunan, gunakan kaedah berikut:
<code class="javascript">firebase.firestore() .collection('proprietary') .doc(docID) .update({ sharedWith: firebase.firestore.FieldValue.arrayRemove({who: "[email protected]"}) });</code>
Dengan memanfaatkan fungsi khusus ini, anda boleh mengemas kini tatasusunan dalam dokumen Firestore anda dengan yakin tanpa bimbang tentang tiruan yang tidak diingini. Ingat untuk merujuk kepada dokumentasi Firestore rasmi untuk contoh terperinci dan panduan tentang senario tertentu.
Atas ialah kandungan terperinci Cara Mengemas kini Tatasusunan dalam Firestore Tanpa Tulis Ganti: Panduan untuk `arrayUnion` dan `arrayRemove`. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!