节点JS“dynamic”写入/更新Firebase节点
我想更新一个名为BoxScores
的Firebase节点,它将保存Q1, Q2, Q3, Q4
四个值
以下是我试图实现的代码,其中qtrDesc
是Q1 or Q2 or Q3 or Q4
的持有者:
for(let i = body[key]["qtr"]; i > 0; i--) { let qtrDesc = "Q".concat(i); ref.child("BoxScores").update({ qtrDesc: body[key]["home"]["score"][i] + ":" + body[key]["away"]["score"][i] }).catch(err => { console.log("Error updating BoxScores node: ", err); }); }
上面的代码的问题是,当更新得到执行时,它将qtrDesc
在BoxScores
节点中,而不是我想要或预期的Q1, Q2, Q3 or Q4
值!
您需要使用[]
符号将variables用作更新中的键:
var updates = {}; updates[qtrDesc] = body[key]["home"]["score"][i] + ":" + body[key]["away"]["score"][i]; ref.child("BoxScores").update(updates).catch(err => {...