【问题标题】:How can I get the newly generated key from a .push using Fireproof for Firebase?如何使用 Fireproof for Firebase 从 .push 获取新生成的密钥?
【发布时间】:2016-04-19 05:23:48
【问题描述】:

我正在使用fireproof,这样我就可以让我的 Firebase 调用基于 Promise。似乎是个好主意,但我很难从 push 获取新生成的 key

firebase = new Firebase("https://mysite.firebaseio.com");

fbase = new Fireproof(firebase);

fbase.child("icm").push(newICM).then(function() {
  return console.log(KEY???);
});

如何获得key

【问题讨论】:

    标签: javascript node.js firebase promise


    【解决方案1】:

    据我所知,Fireproof 不会将快照传递给then()。但它确实返回了push() 返回的原始引用,所以你可以这样做:

    var newRef = fbase.child("icm").push(newICM);
    newRef.then(function() {
      console.log(newRef.key());
    });
    

    请注意,您现在无法返回尚未返回的值,因此return newRef.key() 将不起作用。如果你神秘地返回一些东西,返回承诺:return newRef;,然后在被调用的做newRef.then(...

    【讨论】:

    • snapshot 返回undefined
    • 是的。我也看到了。不知道他们是如何传递的......检查......并更新
    • 看起来像个 hack,但我想现在就可以了
    • 同意,但这是我能看到的唯一方法。您可以随时 fork Fireproof 并将快照和/或 ref 传递给履行回调。
    猜你喜欢
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    • 2021-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-01
    • 2017-06-11
    相关资源
    最近更新 更多