import { ChangeDetectionStrategy, Component, Inject } from '@angular/core'; import { Router } from '@angular/router'; import { DA_SERVICE_TOKEN, ITokenService } from '@delon/auth'; import { SettingsService, User } from '@delon/theme'; @Component({ selector: 'header-user', template: `
{{ user.name }}
{{ 'menu.account.center' | i18n }}
{{ 'menu.account.settings' | i18n }}
{{ 'menu.account.trigger' | i18n }}
  • {{ 'menu.account.logout' | i18n }}
    `, changeDetection: ChangeDetectionStrategy.OnPush }) export class HeaderUserComponent { get user(): User { return this.settings.user; } constructor(private settings: SettingsService, private router: Router, @Inject(DA_SERVICE_TOKEN) private tokenService: ITokenService) {} logout(): void { this.tokenService.clear(); this.router.navigateByUrl(this.tokenService.login_url!); } }