当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript AngularFirestore.doc方法代码示例

本文整理汇总了TypeScript中@angular/fire/firestore.AngularFirestore.doc方法的典型用法代码示例。如果您正苦于以下问题:TypeScript AngularFirestore.doc方法的具体用法?TypeScript AngularFirestore.doc怎么用?TypeScript AngularFirestore.doc使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在@angular/fire/firestore.AngularFirestore的用法示例。


在下文中一共展示了AngularFirestore.doc方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1:

      db.object('PERRINNTeams/' + this.UI.currentTeam + '/chatReplayMode').valueChanges().subscribe(snapshot => {
        if (snapshot != undefined) {
          this.chatReplayMode = snapshot ? true : false;
        }
        this.previousMessageTimestamp = 0;
        this.previousMessageUser = '';
        this.draftMessageDB = false;
        this.draftImage = '';
        this.draftImageDownloadURL = '';
        this.draftMessage = '';
        this.messageNumberDisplay = 15;
        this.teamMessages = this.db.list('teamMessages/' + this.UI.currentTeam, ref => ref.limitToLast(this.messageNumberDisplay)).snapshotChanges().pipe(map(changes => {
          this.UI.loading = false;
          const updateObj = {};
          changes.forEach(c => {
            updateObj['teamReads/' + this.UI.currentUser + '/' + this.UI.currentTeam + '/' + c.payload.key] = true;
          });
          this.db.database.ref().update(updateObj);
          return changes.map(c => ({key: c.payload.key, values: c.payload.val()}));
        }));
        if (this.chatReplayMode) {
          this.chatReplayLoop();
        }
        this.draftMessageUsers = this.db.list('teamActivities/' + this.UI.currentTeam + '/draftMessages/').snapshotChanges().pipe(map(changes => {
          return changes.map(c => ({key: c.payload.key, values: c.payload.val()}));
        }));

        afs.doc<any>('PERRINNTeams/'+this.UI.currentUser+'/viewTeams/'+this.UI.currentTeam).valueChanges().subscribe(userTeam => {
          if (userTeam!=null&&userTeam.lastChatVisitTimestamp!=undefined) {this.lastChatVisitTimestamp = Number(userTeam.lastChatVisitTimestamp); }
          else this.lastChatVisitTimestamp=0;
        });
      });
开发者ID:PERRINN,项目名称:client-web,代码行数:32,代码来源:chat.component.ts

示例2: switchMap

 switchMap(user => {
   if (user) {
     return this.afs.doc<User>(`users/${user.uid}`).valueChanges();
   } else {
     return of(null);
   }
 })
开发者ID:geeksmarter,项目名称:andrews.codes,代码行数:7,代码来源:auth.service.ts

示例3: switchMap

 switchMap((user: any) => {
   if (user) {
     this.userId = user.uid;
     return this.afs.doc<IUser>(`users/${user.uid}`).valueChanges();
   } else {
     return of(null);
   }
 })
开发者ID:Meistercoach83,项目名称:sfw,代码行数:8,代码来源:auth.service.ts

示例4: switchMap

 switchMap(user => {
     if (user) {
         Sentry.configureScope((scope) => {
             scope.setUser({ 'email': user.email });
         });
         return this.afs.doc<User>(`users/${user.uid}`).valueChanges();
     } else {
         return of(null);
     }
 }),
开发者ID:jacobbowdoin,项目名称:RapidWords,代码行数:10,代码来源:auth.service.ts

示例5: followTeam

 followTeam(teamID: string, userID: string) {
   const now = Date.now();
   this.afs.doc<any>('PERRINNTeams/'+userID+/viewTeams/+teamID).update({
     lastChatVisitTimestamp: now,
     name: this.UI.currentTeamObj.name,
     imageUrlThumb: this.UI.currentTeamObj.imageUrlThumb ? this.UI.currentTeamObj.imageUrlThumb : '',
   });
   this.db.object('subscribeTeamUsers/' + teamID).update({
     [userID]: true,
   });
 }
开发者ID:PERRINN,项目名称:client-web,代码行数:11,代码来源:chat.component.ts

示例6: updateUserData

    private updateUserData(user, enteredName?: string) {
        const userRef: AngularFirestoreDocument<any> = this.afs.doc(`users/${user.uid}`);

        const data: User = {
            uid: user.uid,
            email: user.email,
            displayName: user.displayName || enteredName,
            photoURL: user.photoURL || null,
        };

        return userRef.set(data, { merge: true });
    }
开发者ID:jacobbowdoin,项目名称:RapidWords,代码行数:12,代码来源:auth.service.ts

示例7: timestampChatVisit

 timestampChatVisit() {
   if (this.currentTeamObjKey != this.currentTeam) {return; }
   const now = Date.now();
   this.afs.doc<any>('PERRINNTeams/'+this.currentUser+/viewTeams/+this.currentTeam).update({
     lastChatVisitTimestamp: now,
     name: this.currentTeamObj.name,
     imageUrlThumb: this.currentTeamObj.imageUrlThumb ? this.currentTeamObj.imageUrlThumb : '',
   });
   this.db.object('subscribeTeamUsers/' + this.currentTeam).update({
     [this.currentUser]: true,
   });
 }
开发者ID:PERRINN,项目名称:client-web,代码行数:12,代码来源:userInterface.service.ts

示例8: updateUserData

  // Sets user data to firestore after succesful login
  private updateUserData(user: User) {
    const userRef: AngularFirestoreDocument<User> = this.afs.doc(
      `users/${user.uid}`
    );

    const data: User = {
      uid: user.uid,
      email: user.email || null,
      displayName: user.displayName || 'Anon',
      photoURL: user.photoURL || 'https://api.adorable.io/avatars/100/andrews.codes.png'
    };
    return userRef.set(data);
  }
开发者ID:geeksmarter,项目名称:andrews.codes,代码行数:14,代码来源:auth.service.ts

示例9: SetUserData

 SetUserData(user) {
   const userRef: AngularFirestoreDocument<any> = this.afs.doc(`users/${user.uid}`);
   const userData: User = {
     uid: user.uid,
     email: user.email,
     displayName: user.displayName,
     photoURL: user.photoURL,
     emailVerified: user.emailVerified
   };
   return userRef.set(userData, {
     merge: true
   });
 }
开发者ID:niawjunior,项目名称:blog,代码行数:13,代码来源:auth.service.ts

示例10: toggleSetting

 public async toggleSetting(setting: string, value: boolean) {
   try {
     const newSetting = { [setting]: !value };
     const dictionary = await this.dictionariesService.currentDictionary.pipe(first()).toPromise();
     await this.afs.doc(`dictionaries/${dictionary.id}/config/settings`).set(newSetting, { merge: true });
     this.snackBar.open('Setting updated', '', { duration: 2000 });
   } catch (err) {
     this.snackBar.open('Failed to update setting.', '', {
       panelClass: 'snackbar-error',
       duration: 3000
     });
   }
 }
开发者ID:jacobbowdoin,项目名称:RapidWords,代码行数:13,代码来源:settings.service.ts


注:本文中的@angular/fire/firestore.AngularFirestore.doc方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。