Javascript 为外部模块添加路由前缀';什么路线?
在我的Javascript 为外部模块添加路由前缀';什么路线?,javascript,angular,Javascript,Angular,在我的app.module.ts文件中,我(急切地)导入了LoginModule,它有自己的路由模块(login routing.module.ts——假设我无法更改它) 我还导入了另一个路由模块(AppRoutingModule——它处理所有惰性模块) app.module.ts: 登录路由.module.ts文件有自己的路由: login-routing.module.ts: 而批准模块具有: const routes: Routes = [ /* { path :
app.module.ts
文件中,我(急切地)导入了LoginModule
,它有自己的路由模块(login routing.module.ts
——假设我无法更改它)
我还导入了另一个路由模块(AppRoutingModule
——它处理所有惰性模块)
app.module.ts:
登录路由.module.ts
文件有自己的路由:
login-routing.module.ts:
而批准模块
具有:
const routes: Routes = [
/* { path : "", redirectTo: "/welcome", pathMatch : "full"},*/
{
path : 'app',
children: [
{
path : "home",
loadChildren: "~/modules/home/home.module#HomeModule"
},
{
path : "payments",
loadChildren: "~/modules/payments/payments.module#PaymentsModule"
}
]
}
...
请注意,我使用了前缀为app
的无组件路由来组织路由
那么问题出在哪里呢?
我想将登录路由添加到“应用路由”,以便访问登录路由:
app/login/…
换句话说-现在-批准模块应该是:
path : 'app',
children: [
{
path : "home",
loadChildren: "~/modules/home/home.module#HomeModule"
},
{
path : "payments",
loadChildren: "~/modules/payments/payments.module#PaymentsModule"
},
{
path : "login",
//but how o I load all `login-routing.module.ts` routes here ?
},
]
但是LoginModule
应该是即时加载的,而不是延迟加载的,所以我不能使用loadChildern
问题:
简言之,我如何访问登录模块路由:
app/login/loginPassword
而不是
/loginPassword
你添加了什么
RouterModule.forRoot([
{path:'',重定向到:'login',pathMatch:'full'}类似于app.module中的这种方式如果这样做的真正原因是让LoginModule急切地加载,您还可以使用router@PierreDuc哦,那么你的意思是像添加懒惰一样添加它(loadChildren
),只需添加预加载策略
提示?确切地说,要我发布一个示例吗?@PierreDuc不,谢谢。我知道了。顺便说一句,我看到了这个答案
-但他只加载了数组路由,而没有加载路由模块。我的应用程序中没有使用普通路由数组。我到处都使用路由模块。别难过,这会好的我不会帮你的。问题不在于初始重定向。但是从现在起,整个登录路径都应该加前缀。另外-这应该是一个注释
const routes: Routes = [
/* { path : "", redirectTo: "/welcome", pathMatch : "full"},*/
{
path : 'app',
children: [
{
path : "home",
loadChildren: "~/modules/home/home.module#HomeModule"
},
{
path : "payments",
loadChildren: "~/modules/payments/payments.module#PaymentsModule"
}
]
}
...
path : 'app',
children: [
{
path : "home",
loadChildren: "~/modules/home/home.module#HomeModule"
},
{
path : "payments",
loadChildren: "~/modules/payments/payments.module#PaymentsModule"
},
{
path : "login",
//but how o I load all `login-routing.module.ts` routes here ?
},
]