Java 将登录页面添加到现有angular2应用程序

Java 将登录页面添加到现有angular2应用程序,java,angular,angular2-routing,Java,Angular,Angular2 Routing,我是angular2的新手,我们有一个基本的运行应用程序,我需要为这个应用程序编写一个新的登录页面 我看了本教程,基本上可以将其复制为单机版: 但当我试图与现有应用程序集成时,我看到app.component中定义的主页已经不同,我是否应该将这个app.component重命名为一个新组件,并从登录组件重定向到它 将此功能与最小更改集成的最佳方法是什么?围绕此功能的最佳实践您必须创建登录组件,并像下面这样定义登录路径配置 导出常量路由:路由配置=[ {path: 'login', comp

我是angular2的新手,我们有一个基本的运行应用程序,我需要为这个应用程序编写一个新的登录页面

我看了本教程,基本上可以将其复制为单机版:

但当我试图与现有应用程序集成时,我看到app.component中定义的主页已经不同,我是否应该将这个app.component重命名为一个新组件,并从登录组件重定向到它


将此功能与最小更改集成的最佳方法是什么?围绕此功能的最佳实践您必须创建登录组件,并像下面这样定义登录路径配置 导出常量路由:路由配置=[

  {path: 'login', component: LoginComponent},
  {path: '', component: LoginComponent}] //default to login page
在登录组件中

 export class LoginComponent implements OnInit {
  private jwtHelper:JwtHelper = new JwtHelper();
  messages:String[] = [];
  localUser = {
    username: '',
    password: ''
  }
  constructor(private _service:LoginService, private _router:Router) {
  }
  login() {
    this._service.login(this.localUser).then((data) => {
        if (data) {
          this._router.navigate(['/companies']);
        }
      },
      (error) => {
        this.messages = error;
      });
  }
  clearfields() {
    this.localUser.username = '';
    this.localUser.password = '';
    this.messages = [];
  }
 ngOnInit():any {
    if (window.localStorage.getItem('auth_key') === undefined) {
      console.log("window.localStorage.getItem('auth_key'): " + window.localStorage.getItem('auth_key'));
    }
    else if (window.localStorage.getItem('auth_key') != null &&    !this.jwtHelper.isTokenExpired(window.localStorage.getItem('auth_key'))) {
      this._router.navigate(['/companies']);
    }
  }

登录后,您可以根据需要导航到任何页面

您必须创建一个登录组件,并像下面这样在路由配置中定义登录 导出常量路由:路由配置=[

  {path: 'login', component: LoginComponent},
  {path: '', component: LoginComponent}] //default to login page
在登录组件中

 export class LoginComponent implements OnInit {
  private jwtHelper:JwtHelper = new JwtHelper();
  messages:String[] = [];
  localUser = {
    username: '',
    password: ''
  }
  constructor(private _service:LoginService, private _router:Router) {
  }
  login() {
    this._service.login(this.localUser).then((data) => {
        if (data) {
          this._router.navigate(['/companies']);
        }
      },
      (error) => {
        this.messages = error;
      });
  }
  clearfields() {
    this.localUser.username = '';
    this.localUser.password = '';
    this.messages = [];
  }
 ngOnInit():any {
    if (window.localStorage.getItem('auth_key') === undefined) {
      console.log("window.localStorage.getItem('auth_key'): " + window.localStorage.getItem('auth_key'));
    }
    else if (window.localStorage.getItem('auth_key') != null &&    !this.jwtHelper.isTokenExpired(window.localStorage.getItem('auth_key'))) {
      this._router.navigate(['/companies']);
    }
  }

登录后,您可以根据需要导航到任何页面

请添加错误消息和相关代码段(如路由器配置等)。请添加错误消息和相关代码段(如路由器配置等)