Ошибка обновления коллекции Firebase в приложении Ionic 3 - PullRequest
0 голосов
/ 01 июня 2019

У меня проблемы с приложением Firebase vs Ionic 3, когда я создаю нового пользователя в приложении, я не знаю, почему я могу создать нового пользователя только один раз в день, и я пытаюсь повторить в тот же день, нобаза данных не обновляется.Это кажется глупостью, но это именно то, что происходит.У меня есть файл Firebase с именем firebase.ts с учетными данными базы данных для создания соединения:

export const firebaseConfig = {
  // I replaced the data with "#" here for security reasons:
    apiKey: "###",
    authDomain: "###",
    databaseURL: "###",
    projectId: "###",
    storageBucket: "###",
    messagingSenderId: "###",
    appId: "###"
}

Затем у меня есть функция регистра в файле login.ts:

createAccount() {
    let load = this.loadingCtrl.create();
    load.present();

    this.authProvider.register(this.registerForm)
      .then((res) => {
        let uid = res.user.uid;

        //organize data
        let data = {
          uid: uid,
          name: this.registerForm.name,
          email: this.registerForm.email
        };

        //Gravar usuario no firestore
        this.firebaseProvider.postUser(data)
          .then(() => {         
                this.storage.set('usuario', data)
                  .then(() => {
                    load.dismiss();
                    this.navCtrl.setRoot('HomePage');

                  })
          })
          .catch((err) => {
            load.dismiss();
          })
      })
      .catch((err) => {
        load.dismiss();
      })
  }

Инастройки провайдеров в firebase.ts из папки Провайдеры :

import { Injectable } from "@angular/core";
import { AngularFirestore } from "angularfire2/firestore";
import "rxjs/add/operator/map";


@Injectable()
export class FirebaseProvider {
  constructor(private afs: AngularFirestore) {}

  //Save user on firestore
  saveUser = data =>
    this.afs
      .collection("Users")
      .doc(data.$key)
      .update(data);

  //Create user on firestore
  postUser = data =>
    this.afs
      .collection("Users")
      .doc(data.uid)
      .set(data);

      getUser(uid){
        return this.afs.firestore.collection('Users').doc(uid)
        .get();
       }
}

И наконец authentication.ts файл также в папке Провайдеры :

import { Injectable } from '@angular/core';
import { AngularFireAuth } from "angularfire2/auth";

@Injectable()
export class AuthProvider {

  constructor(
    private afAuth: AngularFireAuth
  ) {
  }

  //Create new user
  register = (data) => this.afAuth.auth.createUserWithEmailAndPassword(data.email, data.password);

  //Login for existing user
  login = (data) => this.afAuth.auth.signInWithEmailAndPassword(data.email, data.password);
}

Что я мог сделать?Буквально, когда я создаю одного пользователя, сначала со дня, все в порядке, но затем следующий раз, когда я пытаюсь это сделать, база данных не обновляется!Любая помощь?

...