Я модернизировал, чтобы использовать новый маршрутизатор с угловым 2 от маршрутизатора-устаревшего, и какое-то поведение изменилось.Переход на тот же маршрут, не обновляющий компонент?
На странице, с которой возникают проблемы, находится страница поиска. Мы решили поместить все поисковые термины в URL-адрес, используя HashLocationStrategy
. Трассы выглядеть следующим образом:
const routes: RouterConfig = [
{ path: '', component: HomeComponent },
{ path: 'search/:term/:cat/:page/:sort/:size/:more', component: HomeComponent },
{ path: 'search/:term/:cat/:page/:sort/:size', component: HomeComponent },
{ path: 'search/:term/:cat/:page/:sort', component: HomeComponent },
{ path: 'search/:term/:cat/:page', component: HomeComponent },
{ path: 'search/:term/:cat', component: HomeComponent },
{ path: 'search/:term', component: HomeComponent },
{ path: 'details/:accountNumber', component: DetailsComponent }
];
Я знаю, что строка запроса подход может быть лучше подходит для всех этих вариантов, но требования проекта и принятые другими людьми ...
Во всяком случае, если я перейти к localhost/#/search/Hello
с помощью this.router.navigate(['/search/Hello']);
затем маршрутизатор отлично работает, и все отлично. Хотя на этой странице, если я попытаюсь установить this.router.navigate(['/search/World']);
, тогда URL-адрес в адресной строке браузера обновится соответствующим образом, но компонент не изменится вообще.
Раньше я мог использовать routerCanReuse
, чтобы указать, что я хотел повторно использовать компонент поиска, а routerOnReuse
повторил поиск при наступлении навигации. Я не вижу эквивалента их в @angular/router
. Как я могу перезагрузить текущий маршрут с новыми параметрами URL?
Я запускаю версию 2.0.0-rc.3 для Angular 2 и 3.0.0-alpha.8 of @ angle/router.
Я столкнулся же problem.can вы сказать мне, где я могу поставить этот код на app.component.ts странице или фактической странице (которая не перезагружается). Еще одна вещь: this.service.get (term) .then (result => {console.log (result);}); **. Не могли бы вы объяснить вкратце. – pushp