我使用角度6.我想将图像加载到firebase中。我实现了我的服务来加载图像。但它显示了以下错误,我认为这是由于语句:resolve(upload.snapshot.ref.getDownloadURL());
以下是我的服务文件中的代码:
uploadFile(file: File) {
return new Promise(
(resolve, reject) => {
const almostUniqueFileName = Date.now().toString();
const upload = firebase.storage().ref()
.child('images/' + almostUniqueFileName + file.name)
.put(file);
upload.on(firebase.storage.TaskEvent.STATE_CHANGED,
() => {
console.log('chargement...');
},
(error) => {
console.log('Erreur de chargement: ' + error);
reject();
},
() => {
resolve(upload.snapshot.ref.getDownloadURL());
}
);
}
);
}
Here is the error obtained :
firebasestorage.googleapis.com/v0/b/bookshelves-831b9.appspot.com/o?name=images%2F1529083148026AtoiQuiNesPasEncoreNee.jpg:1 POST https://firebasestorage.googleapis.com/v0/b/bookshelves-831b9.appspot.com/o?name=images%2F1529083148026AtoiQuiNesPasEncoreNee.jpg 400 ()
books.service.ts:79 Erreur de chargement: [object Object]
core.js:1542 ERROR Error: Uncaught (in promise): [object Undefined]
at resolvePromise (zone.js:814)
at resolvePromise (zone.js:771)
at zone.js:873
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
at Object.onInvokeTask (core.js:3662)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420)
at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)
at drainMicroTaskQueue (zone.js:595)