注销后用户数据保留在 angular ,nu线索为什么

User data remain after logout in angular , nu clue why

一切正常,但是当我想切换用户并注销时,下一个用户不会更新其数据,而是继承上一个用户的图像和数据... 我使用会话存储和本地存储,但即使在用户从存储中删除后它仍然继续显示 lol

这是我的特定代码:

page1.ts

  //vars
  personSubject = new ReplaySubject<any>(1);
  person$: Observable<any> = this.personSubject.asObservable();
  getFullPosts: Observable<any>;
  public userGallery: any;

    getFullPosts() {
    this.authService.getAllPosts().subscribe((res: any) => {
      this.getFullPosts = res.data.post;
      this.personSubject.next(res.data.post)
      this.userGallery = res.data.post.forEach(img => {
        img.galleryImages = img.images.map(image => {
          return new ImageItem({ src: image, thumb: image });
        });
      })
    });

auth-service.ts

//vars

constructor(){
 this.keepToken = window.sessionStorage.getItem('token');

    if (this.completeUser != null) {
      console.log("User data is : ", this.getUser);
      console.log("User token is : ", this.keepToken);
    } else {
      console.log("Can't get token..")
    }
}

  public get getToken(): any {
    const TOKEN = window.sessionStorage.getItem('token');
    return TOKEN;
  }

  public get getUser(): UserRegistered {
    const USER = JSON.parse(window.sessionStorage.getItem('user'));
    return USER;
  }

page2.ts


 async logout() {
    // remove user from local storage and set current user to null
    window.sessionStorage.setItem('button', 'true');
    this.clicked = window.sessionStorage.getItem('button');

    const loading = this.loadingCtrl.create({
      keyboardClose: true,
      message: "Logging out. Please wait ...",
      duration: 2500
    });

    (await loading).present();

    setTimeout(async () => {
      const user = window.sessionStorage.removeItem('user');
      const remember = window.sessionStorage.removeItem('remember');

      const getuser = window.sessionStorage.getItem('user');
      console.log(user, remember, getuser);

      window.sessionStorage.setItem('button', 'false');
      this.clicked = window.sessionStorage.getItem('button');
      const redirect = this.router.navigate(['/auth']);
      (await loading).dismiss();
      await redirect;
      window.sessionStorage.clear();
    }, 3500)

  }

注销后我用另一个帐户重新登录,但新用户的数据没有更新,但在控制台中我得到了正确的新用户数据,只是在前端没有显示。有什么想法吗?

这可以通过删除“firebase:session::”的 localStorage 条目来解决。

window.localStorage.removeItem("firebase:session::<host-name>");