У меня были эти конфигурации маршрутизации, и они работают безупречно, меня раздражает только одно: даже если навигация в приложении работает, когда я захожу в адресную строку и нажимаю ввод, она перенаправляет меня на / панель управления, даже если я не изменяюURL и нажмите Enter.
Вот моя конфигурация маршрутов:
import { Routes } from '@angular/router';
import { FullComponent } from './layouts/full/full.component';
export const Approutes: Routes = [
{
path: '',
component: FullComponent,
children: [
{
path: 'usuarios',
loadChildren: './pages/usuarios/usuarios.module#UsuariosModule'
},
{
path: 'autores',
loadChildren: './pages/autores/autores.module#AutoresModule'
},
{
path: 'conteudos',
loadChildren: './pages/conteudos/conteudos.module#ConteudosModule'
},
{
path: 'projetos',
loadChildren: './pages/projetos/projetos.module#ProjetosModule'
},
{
path: 'dashboard',
loadChildren: './pages/dashboard/dashboard.module#DashboardModule'
},
]
},
{
path: 'login',
loadChildren: './pages/login/login.module#LoginModule'
},
{
path: '',
redirectTo: '/dashboard',
pathMatch: 'full'
}
];
Еще одна вещь, которую я заметил, когда я нажимаю, введите и просмотрите мою сеть, я вижу, что решатель для этой страницывызывается, но затем меня перенаправляют в /dashboard.
Заранее всем спасибо.
Редактировать: Забавно, я пытался полностью удалить маршрут из панели мониторинга и сохранил только другие маршруты по любой причине.(или по волшебству) мое приложение все еще пытается достичь маршрута на панели мониторинга, в одной отладке я обнаружил что-то вроде «отложенной загрузки маршрута».
Редактировать 2: В итоге я попал в журнал маршрутизатора: «Идентификатор навигации 1 неравный текущему идентификатору навигации 2 ", тогда я продолжаю бороться и решил изменить свой модуль маршрутизатора, вместо того, чтобы возвращать и const, и в AppModule вызывать RouterModule.forRoot (Approutes) Я изменил на это:
import { Routes, RouterModule } from '@angular/router';
import { FullComponent } from './layouts/full/full.component';
import { NgModule } from '@angular/core';
const routes: Routes = [
{
path: '',
component: FullComponent,
children: [
{
path: 'dashboard',
loadChildren: './pages/dashboard/dashboard.module#DashboardModule'
},
{
path: 'usuarios',
loadChildren: './pages/usuarios/usuarios.module#UsuariosModule'
},
{
path: 'autores',
loadChildren: './pages/autores/autores.module#AutoresModule'
},
{
path: 'conteudos',
loadChildren: './pages/conteudos/conteudos.module#ConteudosModule'
},
{
path: 'projetos',
loadChildren: './pages/projetos/projetos.module#ProjetosModule'
}
]
},
{
path: 'login',
loadChildren: './pages/login/login.module#LoginModule'
}
];
@NgModule({
imports: [RouterModule.forRoot(routes, {enableTracing: true})],
exports: [RouterModule]
})
export class AppRoutingModule { }
НО это сначала не решается, и, основываясь на ошибке, которую я получил в журналах, упомянутых выше, я подумал, не испортил ли мое решение все проблемы.
В дочерних маршрутах у меня есть что-то вроде:
const routes: Routes = [
{
path: '',
component: UsuariosIndexComponent,
resolve: {
paginacao: UsuariosPageResolver
}
}
];
и в моем резольвере у меня есть:
export class UsuariosPageResolver implements Resolve<any> {
pagina = 1;
itensPorPagina = 10;
filtro = '';
constructor(private usuariosService: UsuariosService) { }
resolve() {
return this.usuariosService.paginar(this.pagina, this.itensPorPagina, this.filtro);
}
}
Дело в том, что когда я изменил маршруты и прокомментировал решениевызов, это сработало, НО, когда я раскомментировал решение, которое продолжало работать:)
Я буду продолжать наблюдать за этим, и любой новый результат я буду редактировать.
Edit3: BREAKING NEWS, хотяЯ ничего не реализовал ни в AuthGuard, ни в перехватчиках, ни в чем-либо подобном, ошибка возникает, когда я вхожу в систему, если я очищаю данные сайта, он снова работает.