【发布时间】:2018-08-01 11:12:37
【问题描述】:
我正在制作一个注册页面,每个页面都有自己的组件。
我在一个教程中看到你可以使用:...SignUpRoutes 在 app-routing.module 中的路径之间
例如,目前我在 sign-up-routing.module;
export const SignUpRoutes: Routes = [
{
path: 'sign-up',
component: SignUpComponent,
children: [
{ path: 'me', component: MeComponent },
{ path: 'contact', component: ContactComponent },
{ path: 'payment', component: PaymentComponent }
]
}
];
@NgModule({
imports: [RouterModule.forChild(SignUpRoutes)],
exports: [RouterModule]
})
export class SignUpRoutingModule {}
然后在app-routing-module中:
const routes: Routes = [
{
path: '', component: HomeComponent
},
{
path: 'sign-up', component: SignUpComponent
},
...SignUpRoutes,
{
path: 'login', component: LoginComponent
},
{
path: '**', redirectTo: ''
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
我尝试按照Angular Routing 指南进行操作,但是所有页面都显示为空白。
如果我手动导航到/sign-up/contact,app-routing.module 中的路由通配符会重定向到主页但为空白。如果我尝试导航到/sign-up/me,则页面会加载,但为空白,并且表单在页面上但不可见。
在 sign-up.component html 模板中,有一个<router-outlet>。
我不确定如何继续,因为感觉就像我撞到了一堵砖墙...... 非常感谢任何帮助:)
【问题讨论】:
-
如果您可以使用 stackblitz 为您的问题构建一个小演示,它可以帮助我们更好地帮助您。
-
嗨,黛博拉,这是我大致从我的代码中制作的StackBlitz。我试图让注册路由器处理子页面,但一切都是空白的。
-
我已经够远了,可以展示一些东西。但在这一点上,我对你想要做的更进一步的了解还不够。这是更新的 stackblitz:stackblitz.com/edit/sign-up-page-angular-with-children-chj5zx 下一个问题是注册组件路由到注册组件。我认为可能是您原始主页组件的复制/粘贴问题?