是否可以在 Angular 2 上创建组件抽象?

2024-01-25

我想创建一个具有初始行为的 AbstractComponent,同时能够在需要时在子组件上覆盖它,这可能吗?这是一个好的做法吗?

应该看起来或多或少像这样:

export abstract class AbstractComponent implements OnInit {

  constructor(authService: AuthService, router: Router) {}

  ngOnInit() {
    if (authService.userNotLoggedInAnymore()) {
      router.navigate(['Login']);
    }
  }

  ...
}

是的,只需用真实的扩展该类即可@Component并打电话super()在您重写的方法中,例如 ngOnInit。而且您还必须重写父级中至少具有相同或更多依赖项的构造函数,并将它们传递给super() too.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以在 Angular 2 上创建组件抽象? 的相关文章

随机推荐