Angular 角度2路由器错误:始终重定向到主页
我创建了angular 5应用程序,它正在调试,没有任何编译错误。 它以前工作过。在那个时候,我只使用了一个route.ts文件和一个app.module.ts文件来完成整个项目。然后我意识到当项目变大时,它会变得更复杂。然后我只是改变了我的文件夹结构。现在,每次我转到其他URL,它都会重定向到主页 关于我的文件夹结构,我为每个功能创建了单独的应用程序模块和路由模块,如下所示。主页和登录页有不同的布局。 我的身份验证路由通过身份验证路由.module.ts进行处理,并导入到身份验证模块.ts。 I使用app routing.module.ts处理主要路由,并导入app.module.ts 我的文件夹结构 auth-routing.modules.tsAngular 角度2路由器错误:始终重定向到主页,angular,typescript,module,routing,Angular,Typescript,Module,Routing,我创建了angular 5应用程序,它正在调试,没有任何编译错误。 它以前工作过。在那个时候,我只使用了一个route.ts文件和一个app.module.ts文件来完成整个项目。然后我意识到当项目变大时,它会变得更复杂。然后我只是改变了我的文件夹结构。现在,每次我转到其他URL,它都会重定向到主页 关于我的文件夹结构,我为每个功能创建了单独的应用程序模块和路由模块,如下所示。主页和登录页有不同的布局。 我的身份验证路由通过身份验证路由.module.ts进行处理,并导入到身份验证模块.ts。
从'@angular/core'导入{NgModule};
从“@angular/common”导入{CommonModule};
从'@angular/router'导入{RouterModule,Routes};
从“../auth/no auth guard.service”导入{NoAuthGuard};
从“../layout/home auth resolver.service”导入{homeauth resolver};
从“../auth/components/index”导入{AuthComponent};
常量路由:路由=[
{路径:'login',组件:AuthComponent},
{路径:'寄存器',组件:AuthComponent}
];
@NGD模块({
进口:[
公共模块,
RouterModule.forRoot(路由)
],
导出:[路由模块]
})
导出类AuthRoutingModule{}
您不能在auth.module.ts
中导出AuthRoutingModule
将auth.module.ts
更改为:
import { ModuleWithProviders, NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouterModule } from '@angular/router';
import { AuthRoutingModule } from './auth-routing.module';
import { AuthComponent} from './components/index';
@NgModule({
declarations: [
AuthComponent
],
imports: [
BrowserModule,
AuthRoutingModule
],
exports: [AuthRoutingModule],
providers: [ ]
})
export class AuthModule { }
并从auth routing.module.ts
中删除CommonModule
用法
像这样:
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { NoAuthGuard } from './auth/no-auth-guard.service';
import { HomeAuthResolver } from './layout/home-auth-resolver.service';
import {LayoutComponent, PUBLIC_ROUTES } from './layout/index';
const routes: Routes = [
{ path: '', component: LayoutComponent, data: { title: 'Secure Views' }, children: PUBLIC_ROUTES },
{ path: '**', component: LayoutComponent, data: { title: 'Secure Views' }, children: PUBLIC_ROUTES }
];
@NgModule({
imports: [
RouterModule.forRoot(routes)
],
exports: [RouterModule]
})
export class AppRoutingModule { }
您尚未将功能模块路由加载到主路由器配置。您需要将身份验证路由延迟加载到app router中。查看此文档以了解更多信息。auth.module.ts类的角色是什么?@isanka这对您有帮助吗?请删除路由模块导入中的CommonModule,并检查并从app.module.ts中删除路由模块导入。在我从auth-routing.module.ts中删除CommonModule后,它开始工作。非常感谢。你能编辑一下你的答案吗?这样对别人会有帮助的。。