Как сделать состояние пользователя постоянным даже при перезагрузке страницы?
as @ user184994 Упомянутое состояние NGRX
сохраняется только в памяти.Если вы хотите, чтобы он сохранялся между обновлениями страницы, перейдите на LocalStorage
или sessionStorage
localStorage
и sessionStorage
, чтобы выполнить то же самое и иметь тот же API, но с sessionStorage
данныесохраняется только до тех пор, пока окно или вкладка не будут закрыты, в то время как при localStorage
данные сохраняются до тех пор, пока пользователь вручную не очистит кеш браузера или пока ваше веб-приложение не очистит данные.
Я бы посоветовал вам перейти на @ ngx-pwa / local-storage Асинхронное локальное хранилище для Angular
Для Angular 5:
npm install @ngx-pwa/local-storage@5
Зарегистрируйте его в своемRootModule
import { LocalStorageModule } from '@ngx-pwa/local-storage';
@NgModule({
imports: [
BrowserModule,
LocalStorageModule,
...
]
Введите и используйте его
import { LocalStorage } from '@ngx-pwa/local-storage';
@Injectable()
export class YourService {
constructor(protected localStorage: LocalStorage) {}
}
Использование
let user: User = { firstName: 'Henri', lastName: 'Bergson' };
this.localStorage.setItem('user', user).subscribe(() => {});