Html 具有不同组件的角度4开关
我试图根据单击“Cadastros”操作加载菜单,但我认为问题在于“workspaceSelected”属性对所有组件都不可见 我认为这种情况下的正确位置应该是位于component sidenav中的属性“workspaceSelected”,但我不知道如何处理这种情况 我想点击动作“Cadastros”,然后她切换加载正确的html组件 主成分类别:Html 具有不同组件的角度4开关,html,angular,typescript,Html,Angular,Typescript,我试图根据单击“Cadastros”操作加载菜单,但我认为问题在于“workspaceSelected”属性对所有组件都不可见 我认为这种情况下的正确位置应该是位于component sidenav中的属性“workspaceSelected”,但我不知道如何处理这种情况 我想点击动作“Cadastros”,然后她切换加载正确的html组件 主成分类别: export class PrincipalComponent implements OnInit { workspaceSelecio
export class PrincipalComponent implements OnInit {
workspaceSelecionada: string;
constructor() { }
ngOnInit() {
}
}
主成分:
<header>
<app-navbar></app-navbar>
<app-sidenav></app-sidenav>
</header>
<div class="container" [ngSwitch]="workspaceSelecionada">
<app-cadastros *ngSwitchCase="'cadastros'"></app-cadastros>
<app-movimentacoes *ngSwitchCase="'movimentacoes'"></app-movimentacoes>
<app-administracao *ngSwitchCase="'administracao'"></app-administracao>
<app-relatorios *ngSwitchCase="'relatorios'"></app-relatorios>
<app-configuracoes *ngSwitchCase="'configuracoes'"></app-configuracoes>
<app-dashboard *ngSwitchDefault></app-dashboard>
</div>
地籍
乔伊斯电影
行政官
雷拉蒂奥斯
构型
菜单
如上注释所示,为应用程序定义路由模块:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {CadastrosComponent} from './...component';
....
const appRoutes: Routes = [
{ path: '', redirectTo: '/dashboard', pathMatch: 'full' },
{ path: 'dashboard', component: DashboardComponent },
{ path: 'cadastros', component: CadastrosComponent}
];
@NgModule({
imports: [RouterModule.forRoot(appRoutes)],
exports: [RouterModule]
})
export class AppRoutingModule {
}
然后在应用程序模块中导入路由模块:
导入:[批准模块]
然后,在主组件中定义路由器出口,而不是交换机案例陈述,如下所示:
<router-outlet></router-outlet>
<a routerLink="/cadastros">CADASTROS</a>
然后在侧导航组件模板的锚定标记中,定义路由器链接,如下所示:
<router-outlet></router-outlet>
<a routerLink="/cadastros">CADASTROS</a>
CADASTROS
希望这有帮助!如果您在实施过程中遇到任何挑战,请务必告诉我。如上文评论中所建议,请为应用程序定义路由模块:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {CadastrosComponent} from './...component';
....
const appRoutes: Routes = [
{ path: '', redirectTo: '/dashboard', pathMatch: 'full' },
{ path: 'dashboard', component: DashboardComponent },
{ path: 'cadastros', component: CadastrosComponent}
];
@NgModule({
imports: [RouterModule.forRoot(appRoutes)],
exports: [RouterModule]
})
export class AppRoutingModule {
}
然后在应用程序模块中导入路由模块:
导入:[批准模块]
然后,在主组件中定义路由器出口,而不是交换机案例陈述,如下所示:
<router-outlet></router-outlet>
<a routerLink="/cadastros">CADASTROS</a>
然后在侧导航组件模板的锚定标记中,定义路由器链接,如下所示:
<router-outlet></router-outlet>
<a routerLink="/cadastros">CADASTROS</a>
CADASTROS
希望这有帮助!如果您在实现它时遇到任何挑战,请务必告诉我。我认为这不是
ngSwitch
的好用途。请看一看角度路由器
。@joh04667您能举例说明答案吗?因为我是一个初学者,所以一点好的练习可以被认为是一个答案。我认为这不是ngSwitch
的好用法。请看一看角度路由器
。@joh04667您能举例说明答案吗?因为我是初学者,所以一点好的练习可以被认为是一个答案。@AndreiGheorghiu谢谢你的帮助!我是CSS新手,你的代码真的帮助了我。我面临着同样的情况,我不能使用路由器插座,因为我已经有了一个。我能在其他地方做这个吗way@AndreiGheorghiu谢谢你的帮助!我是CSS新手,你的代码真的帮助了我。我面临着同样的情况,我不能使用路由器插座,因为我已经有了一个。我能用其他方式做吗