这是我的代码:
index
当我尝试运行它时,我收到此错误:var pushRef = currentAssignment.child('answers').push().catch(e => console.log('push', e));
pushRef.set({
// downloadURL: downURL,
textAnswer: textAnswer,
date: this.generateDate(),
seen: false,
// firebaseKey: pushRef.getKey(),
workKey: this.props.questionId
})
,但根据this part of the documentation,它看起来像我正在以同样的方式做所有事情。这是谷歌推送指令的例子:
pushRef.set()
那么我错过了什么?
答案 0 :(得分:1)
通过在.catch(e => console.log('push', e))
后添加push()
,您可以将其从firebase数据库引用更改为其他内容。所以删除它将解决这个问题。
据我所知,调用push()
(不带参数)永远不会产生错误,它只是生成一个firebase引用(唯一键)客户端。
答案 1 :(得分:1)
您的代码期望PartNumber
020001
020002
020003
020004
020005
020006
020007
020009
020010
020011
020012
020013
020014
020019
020101
返回数据库引用。它没有 - catch()
总是返回一个承诺。
这里使用catch是不必要的,因为没有参数的push()是一个完全本地的操作。它返回一个数据库引用,也可以像promise(ThenableReference)一样使用。
如果有任何错误可能会在这里捕获,那就是set()返回的承诺。如果在写入操作期间违反安全规则,则该调用将失败。