Итак, я выполнил все предварительные условия, необходимые для того, чтобы сделать компонент RELOAD при изменении идентификатора параметра, а не просто повторно использовать его.
Короче говоря, следующие шаги:
// в app.routing.ts
RouterModule.forRoot(routes, {onSameUrlNavigation: 'reload'} );
// в маршруте, где я хочу перезагрузить функциональность
runGuardsAndResolvers: 'always',
И в моем компоненте я подписался на события маршрутизатора, и вся инициализация выполняется в экземпляре события NavigationEnd .
Пока все хорошо, так как компонент делает все необходимое, когда я изменяю параметр в URL.
Но у меня есть два вопроса:
Есть ли более простой способ, чем то, что я сделал выше, фактически перезагрузить текущий компонент при изменении paramId, а не просто использовать его повторно?
Почему ngOnDestroy не вызывается, даже если компонент перезагружается, и в таком случае, как выполнить очистку детали?