如何在angular中分别添加用户和管理员导航
我想在angular项目中分离管理员和用户导航,就像电子商务网站一样。但子路由不适用于仪表板或用户。当我点击仪表板内的报告路由时,会给出它的错误。 这是我的代码 应用程序/应用程序路由.module.ts如何在angular中分别添加用户和管理员导航,angular,navigation,Angular,Navigation,我想在angular项目中分离管理员和用户导航,就像电子商务网站一样。但子路由不适用于仪表板或用户。当我点击仪表板内的报告路由时,会给出它的错误。 这是我的代码 应用程序/应用程序路由.module.ts import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; import { DashboardComponent } from './admin/dashb
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { DashboardComponent } from './admin/dashboard.component';
import { HomeComponent } from './components/home/home.component';
const routes: Routes = [
{path: '', component: HomeComponent},
{path: 'dashboard', component: DashboardComponent}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { AdminRoutingModule } from './admin-routing.module';
import { OrderComponent } from './components/order/order.component';
import { ProductComponent } from './components/product/product.component';
import { CustomerComponent } from './components/customer/customer.component';
import { ReportComponent } from './components/report/report.component';
@NgModule({
declarations: [OrderComponent, ProductComponent, CustomerComponent, ReportComponent],
imports: [
CommonModule,
AdminRoutingModule
]
})
export class AdminModule { }
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { ReportComponent } from './components/report/report.component';
const routes: Routes = [
{path: 'reports', component: ReportComponent}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class AdminRoutingModule { }
app/app.component.html
<router-outlet></router-outlet>
<h1>Dashboard</h1>
<li class="nav-item">
<a class="nav-link" [routerLink]="['/reports']" routerLinkActive="router-link-active" >
<span data-feather="bar-chart-2"></span>
Reports
</a>
</li>
<router-outlet></router-outlet>
<p>report works!</p>
管理/管理路由.module.ts
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { DashboardComponent } from './admin/dashboard.component';
import { HomeComponent } from './components/home/home.component';
const routes: Routes = [
{path: '', component: HomeComponent},
{path: 'dashboard', component: DashboardComponent}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { AdminRoutingModule } from './admin-routing.module';
import { OrderComponent } from './components/order/order.component';
import { ProductComponent } from './components/product/product.component';
import { CustomerComponent } from './components/customer/customer.component';
import { ReportComponent } from './components/report/report.component';
@NgModule({
declarations: [OrderComponent, ProductComponent, CustomerComponent, ReportComponent],
imports: [
CommonModule,
AdminRoutingModule
]
})
export class AdminModule { }
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { ReportComponent } from './components/report/report.component';
const routes: Routes = [
{path: 'reports', component: ReportComponent}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class AdminRoutingModule { }
管理/dashboard.components.html
<router-outlet></router-outlet>
<h1>Dashboard</h1>
<li class="nav-item">
<a class="nav-link" [routerLink]="['/reports']" routerLinkActive="router-link-active" >
<span data-feather="bar-chart-2"></span>
Reports
</a>
</li>
<router-outlet></router-outlet>
<p>report works!</p>
仪表板
<router-outlet></router-outlet>
<h1>Dashboard</h1>
<li class="nav-item">
<a class="nav-link" [routerLink]="['/reports']" routerLinkActive="router-link-active" >
<span data-feather="bar-chart-2"></span>
Reports
</a>
</li>
<router-outlet></router-outlet>
<p>report works!</p>
报告有效
但当我尝试访问此路径时,它会出错
错误:未捕获(承诺中):错误:无法匹配任何路由。URL段:“报告”
我认为如果在AppRoutingModule中使用routes的children属性会更清楚,如下所示: 我使用了布局组件,但您可以使用您的模块 我是为我的一个项目而实施的。你可以看看
我想要单独的管理面板和单独的用户配置文件,其中的导航是像一个电子商务网站一样的家庭导航相同,所以在角度它是可能的还是不可能的?我很困惑。我想,你不能对不同的组件使用相同的url,但我建议你创建一个主组件,然后根据html中与角色活动相关的子组件检查登录用户的角色。