Marround
@Marround
Программист, администратор, хороший человек

Angular 5 как сделать чтобы при навигации страница загружалась в верхнем положении?

При билде проекта в продакшн столкнулся с проблемой, когда лазишь по сайту и промотал допустим вниз страницы и переключился на другую то браузер не перематывает страницу вверх! всякие костыли с переметкой работают но ни когда стоит пререндер, и сервер ругается на то что он не знает ничего о document или $ (jquery)... сломал голову как это обойти...
  • Вопрос задан
  • 151 просмотр
Пригласить эксперта
Ответы на вопрос 1
dasha_programmist
@dasha_programmist
ex Software Engineer at Reddit TS/React/GraphQL/Go
В главном компоненте (предположительно app.component) подписываешься на router.events, ловишь NavigationEnd, далее проверяешь isPlatformBrowser(this.platform) и если да, то вызываешь window.scrollTo(0,0).
Подсказки:
import {Inject, PLATFORM_ID} from '@angular/core';
import {isPlatformBrowser} from '@angular/common';
import {Router, NavigationEnd} from '@angular/router'; 

constructor(@Inject(PLATFORM_ID) platform:any, router:Router){
router.events.filter(ev=>ev instanceof NavigationEnd).subscribe(...)
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
07 мая 2024, в 13:28
20000 руб./за проект
07 мая 2024, в 13:07
7000 руб./за проект
07 мая 2024, в 12:59
500 руб./за проект