我正在尝试设计一个网站。用户可以有不同的角色,例如管理员,经理或员工,这些角色将在登录时决定。其余url返回登录用户的类型。我想根据用户类型动态加载视图。动态地,我的意思是侧边栏必须加载特定于该用户的菜单,并且着陆页必须是动态的,具体取决于用户。请告诉我如何做或请将我重定向到适当的资源。因为这是我没有的起点任何代码示例附加。请帮助。提前感谢。Angular 2动态菜单加载和路由
更新
截至目前在有一个登录coponent将重定向到我的主页上这样
this.router.navigate(['/home']);
,并在主页菜单从装载数据库如
this.menuLoader.getFunctionalities(this.empId).subscribe(response => {
this.roleArray=response;
this.roleArray.forEach((element) => {
this.funtionalities = element.functionList;
console.log(element.functionList);
});
});//subscribe ends here
}
和在HTML我有
<li *ngFor = "let x of funtionalities" (click)="closeSidenav()"> <a class="item white" [routerLink] = "'/home'+x.FunctionValue">{{ x.FunctionName.toUpperCase() }}</a></li>
和我有数据库结构等
{
"_id" : ObjectId("59676398506d3c2e58feb5d2"),
"role" : "admin",
"functionList" : [
{
"FunctionName" : "Create CFT",
"FunctionValue" : "/createCFT"
},
{
"FunctionName" : "Update CFT",
"FunctionValue" : "/updateCFT"
},
{
"FunctionName" : "Add Employee",
"FunctionValue" : "/addEmployee"
},
{
"FunctionName" : "Add Resource",
"FunctionValue" : "/addResource"
},
{
"FunctionName" : "Add Employees-Excel",
"FunctionValue" : "/addEmployeesExcel"
},
{
"FunctionName" : "Add Holiday List",
"FunctionValue" : "/holidayList"
},
{
"FunctionName" : "Add Employees to CFT",
"FunctionValue" : "/addEmployeeToCft"
}
]
}
什么是你的代码一样。请更新它发布。问题太宽了 – Aravind
更新了aravind的问题。 –