Angularfire2 пост коллекция и изображение - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть приложение Angular (9), которое использует AngularFire для интеграции с Firebase. Я создал форму для сбора пользовательских данных, но также хотел бы разрешить пользователю загружать изображение профиля внутри формы. Из того, что я могу сказать в документации, это означает попадание во вторую конечную точку для сохранения изображения.

Я смог сохранить пользовательские данные в моей коллекции "users" и загрузить файл в мою Angular место хранения. Однако у меня возникают проблемы при получении URL-адреса изображения профиля на объекте моего пользователя. Я хотел бы, чтобы это было сделано в том же вызове службы от компонента.

Компонент:

// Runs on file input change
onFileChange(event) {
  this.file = event;
}

// Runs on form submit
onSubmit(user) {
  this.userService.newUser(user, this.file);
}

Сервис

newUser(user, file) {
  const fileName = Math.random().toString(36).substring(2);
  const ref = this.storage.ref(`images/${fileName}`);

  // Need to update user.avatar so that when it is added to the collection it contains the download url

  return forkJoin([
    this.firestore.collection('users').add(user),
    ref.put(file.target.files[0])
  ]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...