Angular 如何创建;ngOnActive“;生命周期挂钩?

Angular 如何创建;ngOnActive“;生命周期挂钩?,angular,typescript,hook,angular-lifecycle-hooks,Angular,Typescript,Hook,Angular Lifecycle Hooks,当我的组件在主页上处于活动状态时,我希望调用一个生命周期挂钩 它的登录页面 当我的组件出现在主页面上(即处于活动状态)时,我希望查看我是否已经拥有上一次登录的登录令牌,并根据结果导航到不同的页面 有没有“ngOnActive”钩子?如果没有,那么如何创建它 或者有没有其他方法来实现这一点 我的代码: import { Component, OnInit } from '@angular/core'; import { NgForm } from '@angular/forms'; import

当我的组件在主页上处于活动状态时,我希望调用一个生命周期挂钩

它的登录页面

当我的组件出现在主页面上(即处于活动状态)时,我希望查看我是否已经拥有上一次登录的登录令牌,并根据结果导航到不同的页面

有没有“ngOnActive”钩子?如果没有,那么如何创建它

或者有没有其他方法来实现这一点

我的代码:

import { Component, OnInit } from '@angular/core';
import { NgForm } from '@angular/forms';
import {LoginService} from './login.service';
import {TokenService} from '../data/token.service';
import {Router} from '@angular/router';

@Component({
  selector: 'app-login',
  templateUrl: './login.component.html',
  styleUrls: ['./login.component.css'],
  providers: [LoginService]
})
export class LoginComponent implements OnInit {

  constructor(private loginService: LoginService, private tokenService: TokenService, private router: Router) { }

  ngOnInit() {
    if (this.tokenService.getToken() !== '') {
      console.log(this.tokenService.tk);
      this.router.navigate(['/admin']);
    }
  }
  onSubmit(form: NgForm) {
    this.loginService.login(form.value.email, form.value.password);
  }
}

下面是一段代码作为示例:

(function () {
  angular.module('app', [])
    .controller('MainController', function() {
      activate();
      function activate() {
        console.log('Success'); // this log will appear when ever your controller loads
      }
    });
})();

您可以创建一个函数,即:activate(),然后在组件(控制器)范围内调用它。每次组件可见时都应该调用它。当使用ngOnInit钩子创建组件时,您是否可以不进行检查?你需要做一些定期检查或对一些焦点事件作出反应吗?这是登录页面,当登录页面可见时,我想检查我是否已经有登录令牌,如果有,我将导航到主页,否则用户必须登录。这就是为什么我需要一些这样的钩子。恩戈尼尼这不是解决这个问题的办法。或者有没有其他方法可以让我把这个函数放在哪里呢?你可以发布一些你的代码吗?我可以把我的例子集成到里面!是的,我已经输入了代码,我正在尝试使用ngOnInit检查,但是它只运行了一次代码,一次只运行一次,并且它在控制器加载时运行,正如我所说的。这是AngularJS代码。问题是关于角度2+生命周期挂钩。