Я использую NG2-страницы свитка (https://www.npmjs.com/package/ng2-page-scroll), как это:NG2-страницы свитка: Дождитесь загрузки содержимого при работе по маршрутам
<a pageScroll [routerLink]="['router-one']" href="#content1">Link 1</a> <a pageScroll [routerLink]="['router-two']" href="#content2">Link 2</a> <a pageScroll [routerLink]="['router-three']" href="#content3">Link 3</a>
работает отлично, за исключением того, что ... скажем, Я нахожусь на router-one
, фрагмент content1
, и я нажимаю Link2
, где у меня много компонентов, которым необходимо загрузить свои данные.
После того, как маршрутизация завершена, ее просто доходит до моего фрагмента, что понятно, но мои данные, вероятно, еще не загружены и могут загружаться в следующие 1000 мс.
Так что это в основном, идет к этому id/фрагменту, а не к загрузке данных, и вы больше не видите на своем экране раздел с запрошенным id/фрагментом.
Как установить задержку, чтобы дать данные возможность загружать, когда вы работаете через маршруты?
EDIT:
const childRoutes: Routes = [
{ path: 'router-one', component: OneComponent, pathMatch: 'full' },
{ path: 'router-two', component: TwoComponent, pathMatch: 'full' },
{ path: 'router-three', component: ThreeComponent, pathMatch: 'full' }
];
Вы можете разместить больше какой-то код? – Chrillewoodz
Вы должны создать [Resolver] (https://angular.io/docs/ts/latest/api/router/index/Resolve-interface.html) – Sasxa
@Chrillewoodz, это в основном это, не более кода ... :) Я установил модуль по шагам из ссылки. –