javascript - 对象推送Firebase,如何从推送的项目中删除键名称

标签 javascript firebase

我有这个 Object.key 代码来推送所有项目:

const cloned_items = [];

Object.keys(items).sort().map(key => {
    let item = {
        [`item-${uid}`]: {
            item: false
        }
    }

    cloned_items.push({ ...item });
});

database.ref('/app/items').update({
    ...cloned_items
})

但这会产生以下结果:

"0" : {
    "timeslot-87dah2j" : {
        item: false
    }
},
"1" : {
    "timeslot-7s1ahju" : {
        item: false
    }
}

而不是:

"timeslot-87dah2j" : {
    item: false
},
"timeslot-7s1ahju" : {
    item: false
}

有什么想法吗?

最佳答案

您似乎想创建一个普通对象,而不是数组。

在这种情况下:

const cloned_items = Object.assign(...Object.keys(items).map(uid =>
    ({ [`item-${uid}`]: {item: false} })
));

注意:创建对象时排序是没有用的——它的键应该没有特定的顺序。

关于javascript - 对象推送Firebase,如何从推送的项目中删除键名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46105936/

相关文章:

javascript - 在 Meteor.JS 中创建第一个用户时创建第二个用户

javascript - 表单未通过 jQuery 提交

ios - Firebase 3.6.0 - 登录身份验证 - Swift 3

java - 从 firebase 数据库显示到 FirebaseRecyclerAdapter 时出错

ios - 如何在不通知 ios 应用程序的情况下发送数据消息?

javascript - 将 img 的值复制到剪贴板(然后粘贴?)

javascript - 使用 QtWebkit (HTML/CSS/JS -> PDF) 的自动多页多列流动文本

javascript - 如何从 js.erb 文件传递​​部分 html.erb 表单而不仅仅是一条消息?

swift - 使用 FirebaseHandle 删除 Firebase 观察器不起作用

firebase - 如何更改现有 Firebase 项目的区域?