使用firestore和vue.js上传图片[无法读取属性' id'未定义]

时间:2018-01-15 19:04:46

标签: firebase vuejs2 firebase-storage vuex

我使用element.io将图像上传到带有vue.js的firebase,没关系,它可以正常工作。问题是,当我想更新模型的字段时,我收到此错误。

  

未捕获(承诺)TypeError:无法读取属性' id'的   未定义

methods () {

    upload(file, fileList) {
      this.photo = file.file

      if (this.photo) {

        let storageRef = firebase.storage().ref('profiles/avatar/'+Date.now()+'/'+this.photo.name);
        let uploadTask = storageRef.put(this.photo)

        uploadTask.on('state_changed', function(snapshot){
          var progress = (snapshot.bytesTransferred / snapshot.totalBytes) * 100;
          console.log('Upload is ' + progress + '% done');

        }, function(error) {
        }, function() {
          var downloadURL = uploadTask.snapshot.downloadURL
         firebase.database().ref('/profiles/' + this.$store.getters.profile.id ).update({ avatar: downloadURL })
        })

      }

    }

}

此行中出现错误,当使用我的数据中的变量时,我得到相同的错误

    function() {
       var downloadURL = uploadTask.snapshot.downloadURL
       firebase.database().ref('/profiles/' + this.$store.getters.profile.id )
       .update({ avatar: downloadURL }) })

0 个答案:

没有答案