【发布时间】:2019-04-08 19:57:45
【问题描述】:
我正在使用 vuex 操作,当我尝试获取上传图片的 url 时会发生这种情况,一切都很好,图片保存在 firebase 中,但我无法获取 downloadUrl 并将其添加到我的 downloadurl 的引用聚会数据库
我的代码是这样的
actions: {
createMeetup ({commit, getters}, payload) {
const meetup = {
title: payload.title,
location: payload.location,
description: payload.description,
date: payload.date.toISOString(),
creatorId: getters.user.id
}
let imageUrl
let key
firebase.database().ref('meetups').push(meetup)
.then((data) => {
key = data.key
return key
})
.then(key => {
const filename = payload.image.name
const ext = filename.slice(filename.lastIndexOf('.'))
return firebase.storage().ref('meetups/' + key + '.' + ext).put(payload.image)
})
.then(fileData => {
console.log(fileData)
imageUrl = fileData.metadata.downloadURLs[0]
return firebase.database().ref('meetups').child(key).update({imageUrl: imageUrl})
})
.then(() => {
commit('createMeetup', {
...meetup,
imageUrl: imageUrl,
id: key
})
})
.catch((error) => {
console.log(error)
})
}
【问题讨论】:
-
你能确定
fileData、key、filename值存在吗?也许只是做控制台并注释掉代码中的输出
标签: javascript firebase vue.js firebase-realtime-database vuex