Javascript Firebase存储getDownloadUrl不是一个函数
我正在使用firebase开发一个vue应用程序,我提到了这些问题,但还没有找到任何解决问题的方法。 我要做的是将下载URL存储到我的事件数据库中。 我的代码: 我从第页获取了代码(参见注册事件处理程序的示例)。 我可能做错了什么?我建议您使用返回承诺的方法来链接异步任务返回的不同承诺(即Javascript Firebase存储getDownloadUrl不是一个函数,javascript,firebase,vuejs2,firebase-storage,Javascript,Firebase,Vuejs2,Firebase Storage,我正在使用firebase开发一个vue应用程序,我提到了这些问题,但还没有找到任何解决问题的方法。 我要做的是将下载URL存储到我的事件数据库中。 我的代码: 我从第页获取了代码(参见注册事件处理程序的示例)。 我可能做错了什么?我建议您使用返回承诺的方法来链接异步任务返回的不同承诺(即getDownloadUrl()和set()) 因此,以下几点可以起到作用: var stRef = st.ref(`event-photos/${eventId}`); // st is firebase
getDownloadUrl()
和set()
)
因此,以下几点可以起到作用:
var stRef = st.ref(`event-photos/${eventId}`); // st is firebase.storage()
var upTask = stRef.put(this.fileBlob);
upTask
.then(snapshot => {
return snapshot.ref.getDownloadUrl();
})
.then(url => {
return db
.collection('events')
.doc(eventId)
.set({
image_url: url
});
})
.catch(error => {
alert(error.message);
});
我变了
var stRef = st.ref(`event-photos/${eventId}`)
var upTask = stRef.put(this.fileBlob)
到
我正在用这个函数获取下载的URL。因此,我想我们不能将路径放在ref中,而必须使用child。在警报“snapshot.ref.getDownloadUrl不是一个函数”中仍然会出现相同的错误,这看起来很奇怪,
firebase.SDK\u版本的值是多少?根据规范,这段代码应该运行良好。如果没有,那么提交一份bug报告是值得的。
var stRef = st.ref(`event-photos/${eventId}`)
var upTask = stRef.put(this.fileBlob)
var upTask = st.ref().child(`event-photos/${eventId}`).put(this.fileBlob)