Angular 6, навигация маршрутизатора не загружает компонентное представление, но URL получает изменение - PullRequest
0 голосов
/ 12 марта 2019

Маршрутизатор не загружает компонент, изменяется только URL.Когда я обновляю страницу и использую ту же навигацию, она работает.Кто-нибудь знает, как это исправить?Я использую preloadingStrategy: customPreloading и onSameUrlNavigation: «reload» в app.module.ts, а мой app.routes.ts содержит маршрут к компонентам модуля

{ path: 'directory/:domain', loadChildren: 'app/users/users.module#userModule' },

users.module.ts содержит

@NgModule({
    imports: [
        SharedModule,
        userRoutes,
        AddNewUserModule,
        EditUserModule,
        UserListModule
    ],
})

user.routing.ts


 const routes: Routes = [
        {
            path: 'add-new-user', component: AddNewUserComponent
        },
    ]
    export const userRoutes: ModuleWithProviders = RouterModule.forChild(routes);

Когда я обновляю браузер и получаю доступ к маршруту, он работает нормально, но когда я загружаю свой сайт и вход в систему и когда я маршрутизирую страницу добавления нового пользователя, URL-адрес изменяется, но пользовательский интерфейс компонента не отображается, но при последующем обновлениибраузера работает.Я также использую средства защиты маршрутизации, но это не отрицает мой маршрут, и при этом не происходит никакой отмены навигации.

Кто-нибудь знает, как это исправить ??Был бы очень признателен за усилия.

1 Ответ

0 голосов
/ 12 марта 2019

Кажется, что ваш AddNewUserComponent происходит из модуля, отличного от вашего UserModule, вы можете добавить свойство entryComponent в свой модуль и импортировать ваш компонент следующим образом:

@NgModule({ 
  imports: [ SharedModule, userRoutes, AddNewUserModule, EditUserModule, UserListModule ], 
  entryComponents: [AddNewUserComponent] 
}) 

На самом деле, когда вы хотитеиспользовать компонент, не вызывая его с помощью html selector , вам нужно импортировать его в entryComponents

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...