我将firebase与ionic3 angularjs集成,成功添加数据,如
var fireData =
{
userid : '1122233',
questionId : '18022',
answerId : '25633',
points : '2'
}
//Add
this.sample.list('paperCode').push(fireData);
现在我想更新如下图所示
答案 0 :(得分:1)
如果您不知道密钥,请首先使用您知道的字段查询数据,然后迭代结果并获取密钥。然后你可以执行更新。
尝试
updateFunction(questionId){
this.sample.list('/paperCode', ref => ref.orderByChild('questionId').equalTo(questionId)).snapshotChanges()
.subscribe(actions => {
actions.forEach(action => {
// here you get the key
console.log(action.key);
this.sample.list('/paperCode').update(action.key, { points: 10 });
});
});
}
我希望您的问题ID是唯一的,否则它会覆盖所有查询结果。
答案 1 :(得分:0)
您需要设置该对象的路径并更新您想要的字段。在这个例子中......
firebase.database().ref(1710172911409/L5F4BEuePS8qxUqDNoF/questionId).update("NEWQUESTIONID);
如果您不知道推送对象的唯一ID,则可以查询它。了解详情here