我正在使用AngularJS2开发单页应用程序,如果用户未登录,我想重定向到登录页面,如何检查每条路由的条件以检查登录?
import { RouterModule, Routes } from '@angular/router';
import { HomeComponent } from './home/home.component';
import { LoginComponent } from './login/login.component';
import { NotFoundComponent } from './not-found/not-found.component';
import { SalesComponent } from './sales/sales.component';
import { LogoutComponent } from './logout/logout.component';
const appRoutes: Routes = [
{ path: 'home', component: HomeComponent },
{ path: 'login', component: LoginComponent },
{ path: 'employees', component: EmployeeComponent },
{ path: '404-not-found', component: NotFoundComponent },
{ path: 'logout', component : LogoutComponent },
{ path: '**', redirectTo: '/404-not-found' }
];
export const routing = RouterModule.forRoot(appRoutes);
我想检查app.routing.ts文件中的登录状态,如果我没有登录,我应该重定向登录。 谢谢你的帮助。
答案 0 :(得分:0)
请参阅Angular2 redirect to login page
上的答案使用CanActivate接口实现的解决方案是新路由器当前版本的强大解决方案。
答案 1 :(得分:0)
您必须按照Routing and Navigation文档中的说明创建身份验证服务和身份验证服务,并且需要在路由配置中对其进行配置。