Угловой 7 на той же URL-адрес проблемы с навигацией? - PullRequest
1 голос
/ 08 октября 2019

Постановка задачи: -

, когда я перемещаюсь по тому же URL-адресу, ngonInit или любые другие циклы спасательных хуков не работают в угловом положении. Сценарий: -

У меня ленивый загруженный универсальный модуль, в котором контент меняется в зависимости от того, по какой ссылке он идет. поэтому у меня есть несколько кнопок с разными именами, указывающими на один и тот же компонент, и когда я нажимаю кнопку, мне нужно имя экрана, чтобы я мог получить contenet для общего компонента в соответствии с именем экрана и отобразить его пользователю.

Проблема, с которой я сталкиваюсь: -

, если компонент открыт и отображает сценарий, и пользователь нажимает на другую кнопку, которая направляет к тому же компоненту, угловые хуки жизненного цикла не работают, и я не могу вызвать APIобновить данные? так как этого добиться?

Решение, которое я пробовал: - 1. Свойство onSamenUrlNavigation установлено в «Перезагрузить». forRoot () Затем я подписался на router.event в этом универсальном модуле и обновил данные, которые я использовал, проверив, что если это экземпляр urlnavigationend. Но проблема в том, что когда пользователь переходит в левое меню и нажимает кнопку «другое», мой API запускается, и онможет вызвать проблемы.

добавлен параметр запроса с именем экрана в качестве ключа, но методы жизненного цикла не работают

добавлены навигационные элементы, но есть некоторые проблемы

так как исправить эту проблему в угловых?

1 Ответ

0 голосов
/ 08 октября 2019

Я бы пошел с решением NavigationEnd, но вы можете проверить внутри объекта Event, является ли URL-адрес, на который перешел пользователь, правильным для нового запроса API, например:

router.events.subscribe((event) => {
    if (event instanceof NavigationEnd && event.url.match('path/to/my/component')) {
        this.loadApiData();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...