ecode-identity
v0.0.41
Published
ecode 组织人员身份模块 包含组织 人员 租户管理
Downloads
11
Readme
EcodeIdentity
ecode 组织人员身份模块 包含组织 人员 租户管理
使用
创建新项目
ng new test
安装
npm install ecode-identity
导入模块
@NgModule({
imports: [
IdentityModule.forRoot()
]
})
配置
依赖ecode-auth模块 先配置auth模块的AUTH_CONFIG
export function initializeAuthConfig(factory: EcodeAuthConfigFactory) {
let config = factory.getConfig(
"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCgKEtllxrAZ1izOvtQbsv89sTp1KwNiqe3zoVEWu49CV80CntN2P42xi+kwx+DvrJx75WW0LpXOKkuAUUoBWrBgMh+Kx5+XwasPX36WfWtQ3OpJzmUPTvDD60w/gVpVc1xCYzRGNqSP/OBZyT/SxJDitD4UpTranpklRsIlv/+vwIDAQAB",
"128",
"http://localhost:3200"
);
config.loginRoute = '/login'
return config;
}
@NgModule({
imports: [
IdentityModule
],
providers: [
{
provide: AUTH_CONFIG,
useFactory: initializeAuthConfig,
deps: [EcodeAuthConfigFactory],
multi: false
}
],
})
创建login组件和home组件
ng g c login
ng g c home
login组件
import { Component, OnInit } from '@angular/core';
import { AuthService } from 'ecode-auth';
@Component({
selector: 'app-login',
template: `
<p>login works!</p> `
})
export class LoginComponent implements OnInit{
constructor(private authService:AuthService){
}
ngOnInit(): void {
this.authService.login("替换为用户名", "替换为密码");
}
}
home组件
import { Component, OnInit } from '@angular/core';
import { AuthService } from 'ecode-auth';
import { IUser, IdentityService, User } from 'ecode-identity';
@Component({
selector: 'app-home',
template:`
<p>{{user.name}}</p>
`
})
export class HomeComponent implements OnInit {
constructor(private authService: AuthService, private idService: IdentityService) {
}
user: IUser = new User();
ngOnInit(): void {
if (this.authService.token) {
this.idService.identity().then(identity => {
console.log(identity);
this.user = identity.user;
});
}
}
}
## 配置路由
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { authGuardFactory } from 'ecode-auth';
import { HomeComponent } from './components/home/home.component';
import { LoginComponent } from './components/login/login.component';
// 使用ecode-auth模块提供的路由守卫
const authGuard = authGuardFactory();
const routes: Routes = [
{ path: '', pathMatch: 'full',redirectTo:"/home"},
{ path: 'login', component:LoginComponent },
// 将home路由配置路由守卫
{ path: 'home', canActivate: [authGuard], component:HomeComponent},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
启动项目测试
npm start