刷新页面中丢失数据-没有本地存储的任何解决方案

时间:2019-01-29 22:01:58

标签: javascript angular firebase firebase-authentication

在我的登录功能(authService)中,我设置了电子邮件,然后使用authService在其他组件中获取了它,但是当我刷新页面时,我丢失了数据(电子邮件)并得到未定义的值。

类AuthService:

email: string;
signinUser(email: string, password: string) {
        firebase.auth()
         .signInWithEmailAndPassword(email, password)
         .then(response => {

                   this.setEmail(email);
}



//getter for email
    getEmail(): string {
        return this.email;
 }

//setter for email
    setEmail(email: string): void {
        this.email = email;
}

**类NavbarComponent:**

this.authService.getEmail()在刷新页面时返回undefined。

感谢您的任何帮助。

1 个答案:

答案 0 :(得分:0)

如果您不想丢失数据,则应将其保存在LocalStorage中,因为刷新页面时,所有数据也会被刷新。

setEmail中,您应该这样做:

localStorage.setItem('email', "example@mail.com")

在您的getEmail中,您应该这样做:

return localStorage.getItem('email')