javascript - 从 Firebase 获取图片网址
问题描述
我正在将图像上传到 firebase,然后在上传完成后尝试检索 URL,但出现此错误。
[Error] Error uploading image: – TypeError: undefined is not an object (evaluating 'snapshot.storageRef.getDownloadURL') — speakers.js:150
TypeError: undefined is not an object (evaluating 'snapshot.storageRef.getDownloadURL') — speakers.js:150
(anonymous function) (speakers.js:161)
promiseReactionJob
图片上传得很好,但我没有得到 URL。
var storageRef = firebase.storage().ref();
function uploadPhoto() {
if (selectedFile != null) {
var filePath = "Speaker Images/" + selectedFile.name + Date.now();
var upload = storageRef.child(filePath).put(selectedFile).then(function(snapshot) {
snapshot.storageRef.getDownloadURL().then(function(downloadUrl) {
console.log(downloadUrl);
uploadImageUrl = downloadUrl;
if (docId != null) {
updateSpeaker();
} else {
createNewSpeaker();
}
});
})
.catch(function(error) {
console.error("Error uploading image: ", error);
});
} else {
if (docId != null) {
updateSpeaker();
} else {
createNewSpeaker();
}
}
}
快照似乎很好。
[Log] Ee {bytesTransferred: 30255, totalBytes: 30255, state: "success", metadata: Object, task: e, …} (speakers.js, line 150)
解决方案
snapshot
变量的类型为,UploadTaskSnapshot
没有storageRef
子级。您可能正在寻找snapshot.ref
:
snapshot.ref.getDownloadURL().then(function(downloadUrl) {
...
推荐阅读
- python - 将文件从一个文件夹复制到另一个文件夹并重命名文件
- hibernate - 如何使用 JPA 持久化字符串数组
- python - 用于一对多网络的 ConvLSTM2D
- solr - 在 Hue 中创建可点击的 URL
- angular - 如何用角度刷新数据?
- java - 如何从 C++ 服务器到 Java 客户端的 TCP 视频流?
- python - 一次处理多个绘图对象
- wordpress - ERR_INCOMPLETE_CHUNKED_ENCODING 200 - WordPress
- testing - 如何为 xunit 测试设置测试运行标题?
- angular - 未捕获的错误:模板解析错误:“app-my-profile”不是已知元素: