前提・実現したいこと
firebaseを用いたアプリケーションで画像をStorageに保存した後、
そのdownloadUrlを取得したいです。
https://firebase.google.com/docs/storage/web/upload-files?hl=ja
↑の「アップロードの進捗状況をモニタリングする」を参照しています。
発生している問題・エラーメッセージ
関数の返り値としてdownloadUrlが取得できず、Promiseが帰ってくる。
該当のソースコード
TypeScript
1export const saveImages = async ( 2 name: string, 3 file: any, 4) => { 5 let storage = firebase.storage() 6 let imageUrl; 7 const storageRef = storage.ref() 8 const uploadTask = storageRef.child(`images/${name}`).put(file) 9 uploadTask.on( 10 'state_changed', 11 (snapshot) => { 12 console.log('snapshot', snapshot) 13 }, 14 (error) => { 15 console.log('err', error) 16 }, 17 () => { 18 uploadTask.snapshot.ref.getDownloadURL().then(function(downloadURL) { 19 imageUrl = downloadURL; 20 }) 21 } 22 ) 23 return imageUrl; 24 // ↑のreturnでURLを返すようにしたいイメージです。 25};
TypeScript
1// 戻り先 2let downloadUrl = saveImages(fileName, file); 3console.log(downloadUrl); // https://image_url....
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。