问题描述
有人可以帮忙吗?我一直在搜索文档数小时,但找不到正确的解决方案。我正在尝试上传我的项目中名为 house.jpg 的硬编码图像。但是,当我上传它时,它没有正确上传。我指定它是一个图像,但它只显示“错误加载预览”。它也存储在 9 个字节,而它应该存储大约 50KB。
var storageRef = storage.ref();
var propertyRef = storageRef.child(mainImageUrl);
console.log("adding property image")
const myPromise = new Promise((resolve,reject) =>{
var Metadata = {
contentType: 'image/jpeg',cacheControl: 'public,max-age=300',};
var image = "../../assets/icons/house.jpg"
console.log(image)
propertyRef.put(image,Metadata).then((snapshot)=>{
console.log('Uploaded a file',snapshot);
snapshot.ref.getDownloadURL().then((downloadURL)=>{
console.log("url: ",downloadURL);
resolve(downloadURL);
})
}).catch((error)=>{
reject(error);
})
});
解决方法
您将字符串 ../../assets/icons/house.jpg
保存为文件
如果你想从这个位置保存文件,你必须先获取数据。
需要:
var storageRef = storage.ref();
var propertyRef = storageRef.child(mainImageUrl);
console.log("adding property image")
const myPromise = new Promise((resolve,reject) =>{
var metadata = {
contentType: 'image/jpeg',cacheControl: 'public,max-age=300',};
var image = require("../../assets/icons/house.jpg")
console.log(image)
propertyRef.put(image,metadata).then((snapshot)=>{
console.log('Uploaded a file',snapshot);
snapshot.ref.getDownloadURL().then((downloadURL)=>{
console.log("url: ",downloadURL);
resolve(downloadURL);
})
}).catch((error)=>{
reject(error);
})
});