簡體   English   中英

消防站? 如何通過 javascript 代碼從數組中刪除 map?

[英]Firestore! How can I remove a map from array by javascript code?

我正在嘗試使用JavascriptFirestore中的數組中刪除 map 任何人都可以幫助我嗎?

在此處輸入圖像描述

順便說一句,我使用了這幾種方法,但它們都不起作用。

第一種方法:

imgRef.update({
        "images": firebase.firestore.FieldValue.arrayRemove({
            "caption":...,
            "id":...,
            "postID":...,
            "url":...,
            "userID":...
        })
    });

第二種方法:

imgRef.update({
        "images": firebase.firestore.FieldValue.arrayRemove(0)
    });

感謝你的幫助

這是從數組中調用和更新(“刪除”)元素的完整代碼:

imgRef.get().then(function(doc) {
            if (doc.exists) {
                imgRef.update({
                    "images": firebase.firestore.FieldValue.arrayRemove(doc.data().images[position])
                });
            }
        })
        .catch(function(error) {
            console.error(error.message);
        });

僅當您提供所有map 字段以及與要刪除的數組項匹配的字段的確切值時,您的第一個代碼示例才會起作用。 任何不同的東西,它什么都不做。 由於您沒有顯示這些值,因此我們無法說明可能出了什么問題。

如果您不知道所有確切的值,唯一的選擇是閱讀文檔,通過查找並刪除應刪除的數組元素來修改快照中的數組,然后將新數組寫回文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM