如何在Firebase / Ionic中将个人资料照片添加到经过身份验证的用户帐户

时间:2019-07-16 11:03:32

标签: angular typescript firebase ionic-framework firebase-authentication

我已经阅读了Firebase网上的“管理用户”文档,还观看了其YouTube频道上的视频。

但是,当我尝试实现它们显示的代码时,我收到此错误:“属性'afAuth'在HTML类型的元素上不存在。”和 “类型HTML元素上不存在属性'afStorage'。”

非常感谢您的帮助。

这是我的代码:

import { Component, OnInit } from '@angular/core';
import { AngularFireAuth } from '@angular/fire/auth';
import { NavController } from '@ionic/angular'; 
import { AngularFireStorage } from '@angular/fire/storage'


@Component({
  selector: 'app-profile',
  templateUrl: './profile.page.html',
  styleUrls: ['./profile.page.scss'],
})
export class ProfilePage implements OnInit {
firstName = this.firstName;
  constructor(public afAuth: AngularFireAuth, private navCtrl: NavController, private afStorage: AngularFireStorage) { }


  ngOnInit() {
  }

  ProfilePic() {
    var uploader = document.getElementById('upload')
    var fileButton = document.getElementById('fileButton');
    fileButton.addEventListener('change', function(e) {
    var file = 'e.target.files[0];'
    var user = this.afAuth.auth.currentUser;
    var storageRef = this.afStorage.ref(user + '/profilePicture/' + file) 
    var task = storageRef.put(file);
    })          

    }

1 个答案:

答案 0 :(得分:0)

您正在尝试访问事件侦听器的回调内的AugularFireAuth对象。

我建议您先回叫返回图像,然后再用另一种方法将图像保存到用户的firebase配置文件中