Используется для проверки, всегда ли коллекция firestore .exist () возвращает false - PullRequest
0 голосов
/ 13 апреля 2019

Я пытаюсь создать профиль пользователя для пользователей из angularfire auth, в котором только один пользователь должен иметь 1 userProfile.

Я вставил данные в документ, используя профиль

this.db.collection(`users/`+this.userId+`/userProfile`).add({
                    age : "",
                    weight: "",
                    height: "",
                    times: 1,
             })

.page.ts

user ={};
userId = "";

  constructor( public afAuth: AngularFireAuth,
               public db: AngularFirestore, ) { 
    this.afAuth.authState.subscribe(user=>{
        if(user) {
            this.user = user;
            this.userId = user.uid;
            console.log(this.user);
            console.log(this.userId);

            this.db.collection(`users`, ref => ref.where('users', "==", this.userId)).snapshotChanges().subscribe(res => {
                if (res.length > 0)
                {
                console.log(res);
                console.log(this.db.collection(`users`));
                console.log(ref=> ref.where('users', "==", this.userId));   
                console.log("Match found.");
                }
                else
                {
                console.log(res);
                console.log(this.db.collection(`users`));
                        console.log(ref=>ref.where('users',"==",this.userId));  
                console.log("Does not exist.");
                }
            });

        }
    })

console.log возвращает

Q {G: Array(0), l: "AIzaSyD9GaS4_mg5r6YxPUJDbh4PVGAJHp3rndU", m: "[DEFAULT]", u: "limitremoval-c46dc.firebaseapp.com", b: Nh, …}
wTWEj4KcDFdaekNYGWtMYUnIAmz2
AngularFirestoreCollection {ref: CollectionReference, query: CollectionReference, afs: AngularFirestore}
ƒ (ref) { return ref.where('users', "==", _this.userId); }
Does not exist.
...