上传文件到firebase存储无法正常工作

时间:2017-04-20 21:09:26

标签: javascript reactjs firebase firebase-storage

我确实在firebase storage阅读了该文档,但出于某种原因,我无法让它发挥作用。

我正在使用react,我想要的是能够将文件上传到我的firebase存储,但我一直收到错误

TypeError: thisRef.put(...).then is not a function

我想我需要不同的眼睛。

这是我的功能

uploadFile = (e) => {
e.preventDefault();
  var file = this.refs.filePath.files[0];
  var storageRef = firebase.storage().ref();

  //dynamically set reference to the file name
  var thisRef = storageRef.child(file.name);

  //put request upload file to firebase storage
  thisRef.put(file).then(function(snapshot) {
  console.log('Uploaded a blob or file!');
  });
}

更新

文件上传到firebase存储,但它一直在抱怨承诺(.then)

以下是我正在处理GitHub

的文件

2 个答案:

答案 0 :(得分:0)

您的脚本在我的环境中运行正常。 尝试

<div id="computed">
    <button @click="alertRev">reverse the word</button>
</div>

并检查console.log(thisRef.put(file)); 是否为承诺。

thisRef.put(file)

答案 1 :(得分:0)

您可以尝试这样的事情

async function _UpdateImage(image) {
const response = await fetch(image);
const blob = await response.blob()
const user = firebase.auth().currentUser;
if (user) {
    const storageRef = firebase.storage().ref();
    const thisRef = storageRef.child("ProfilePhoto/" + user.uid);
    thisRef.put(blob).then(function (snapshot) {
        console.log('Uploaded a blob or file!',snapshot);
    });

}