Javascript 在Firebase中添加数据列表

Javascript 在Firebase中添加数据列表,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,以下代码按预期工作。但我有两个问题: // Save default Account Types var refTypes = this.housesRef.child(key + "/memberaccounttypes/"); refTypes.push({ name: 'Checking', icon: '0' }); refTypes.push({ name: 'Savings', icon: '0' }); refTypes.push({ name: 'Credit Card', ic

以下代码按预期工作。但我有两个问题:

// Save default Account Types
var refTypes = this.housesRef.child(key + "/memberaccounttypes/");
refTypes.push({ name: 'Checking', icon: '0' });
refTypes.push({ name: 'Savings', icon: '0' });
refTypes.push({ name: 'Credit Card', icon: '0' });
refTypes.push({ name: 'Debit Card', icon: '0' });
refTypes.push({ name: 'Investment', icon: '0' });
refTypes.push({ name: 'Brokerage', icon: '0' });
  • 使用这种方法,我是否要到Firebase做几次旅行,每次推一次
  • 是否有一种更有效、最佳实践的方法可以一次性保存以下数据

  • 我使用的是Firebase SDK 3

    以这种方式推送的每个调用实际上都会导致到Firebase的往返。通过检查浏览器调试工具的“网络”选项卡上的“Web套接字”窗格,可以轻松验证这一点

    如果您希望将此作为单个更新运行,则可以将它们组合到多位置更新中,其中包括:

    var refTypes = this.housesRef.child(key + "/memberaccounttypes/");
    var updates = {};
    updates[refTypes.push().key] = { name: 'Checking', icon: '0' };
    updates[refTypes.push().key] = { name: 'Savings', icon: '0' };
    updates[refTypes.push().key] = { name: 'Credit Card', icon: '0' };
    updates[refTypes.push().key] = { name: 'Debit Card', icon: '0' };
    updates[refTypes.push().key] = { name: 'Investment', icon: '0' };
    updates[refTypes.push().key] = { name: 'Brokerage', icon: '0' };
    refTypes.update(updates);
    

    请注意,这几乎不会节省任何时间/带宽,因为。

    一如既往,您是最好的。谢谢你,弗兰克!