我遇到了一个Vue方法的问题,它既可以将新协议推送到一个Firebase引用,也可以将数据设置为另一个。问题出在该方法设置数据时。我当前的方法无法获得正在写入dealsRef的交易密钥,以便将其保存在dealsRel中。
Firebase参考:
// Firebase reference to deals
const dealsRef = db.ref('deals');
// Firebase reference to deal "relations"
const dealsRel = db.ref('dealsRel');
方法:
addDeal() {
// Push new Deal to Firebase
dealsRef.push(this.newDeal),
//Issue is here:
dealsRel.child(this.newDeal.provider).child( How to get key of object pushed in line above? ).set(true)
},
JSON结构:
deals
-KjtfMcfuZkP_kKP708x
provider: "-KQ1if2Zv3R9FdkJz_1_"
title: "Deal Name"
dealsrel
-KQ1if2Zv3R9FdkJz_1_" // Provider Firebase ID
Needs to be "-KjtfMcfuZkP_kKP708x": true //Firebase ID of deal
...
答案 0 :(得分:2)
能够解决使用Firebase .getKey()
的问题:
var theKey = dealsRef.push(this.newDeal).getKey()
dealsRel.child(this.newDeal.provider).child(theKey).set(true)