Я, например, делаю такой сервис для хранения стейта текущей страницы.
@Injectable({
providedIn: 'root'
})
export class DashboardStateService {
private contentPage = new BehaviorSubject<number>(1);
public changeContentPage(page: number): void {
this.contentPage.next(page);
}
public getContentPage(): number {
return this.contentPage.getValue()
}
}
Соответственно потом в компоненте можно вот так получать:
async ngOnInit() {
this.currentPage = this.dashboardStateService.getContentPage()
}
Ну или изменять страницу в удобном месте методом
this.dashboardStateService.changeContentPage(2)
Можно адаптировать и под хранение состояния фильтров да и чего угодно в принципе.
p.s. Писал сразу от руки, может где-то ошибка в синтаксисе есть.
p.s.s. Ну вообще, думаю, есть способ гораздо лучше, ежели тот, который я написал, выглядит не очень.