В настоящее время я пишу свое первое приложение с угловым 2. У меня есть OverviewComponent, которая имеет следующий простой шаблон:Угловая 2 перезагрузка маршрута по изменению параметра
<div class="row">
<div class="col-lg-8">
<router-outlet></router-outlet>
</div>
<div class="col-lg-4">
<app-list></app-list>
</div>
</div>
при доступе к URL /
мой маршрутизатор перенаправляет меня к /overview
, который затем загружает карту в маршрутизаторе розетке. В поле есть список элементов, которые можно щелкнуть, чтобы отображать <app-detail>
вместо компонента приложения. Поэтому я передаю идентификатор ссылочного json-файла в URL-адрес: /details/:id
(на моих маршрутах).
Все перечисленные работы полностью прекрасны. Если я сейчас нажму на один из элементов списка, будут показаны детали, но когда я выберу другой элемент списка, представление не изменится на новые детали. URL-адрес изменяется, но содержимое не перезагружается. Как я могу добиться повторной инициализации компонента DetailComponent?
Хотя это предлагаемое решение, вопрос, который у меня был, был моим компонентом (который имеет вышеприведенный код) загружался после того, как маршрут был изменен, и, таким образом, код в этом обещании не был уволен. –
можете поделиться фрагментом кода для меня, чтобы понять? – gpanagopoulos
Это, безусловно, более изящное и угловатое решение, хотя я бы скорее обменял 'resetComponentState()' на более обобщенную функцию 'initialize', которая вызывается всякий раз, когда компонент создается или параметры изменены. – hGen