如何在Angular 2

时间:2016-06-01 07:51:35

标签: login typescript angular modal-dialog

我正在尝试为 Angular 2 版本rc-1中的应用程序编写登录组件。但是我没有找到如何在没有按钮操作的情况下打开我的模态

当我加载我的应用程序时,我会检查用户是否已登录(使用localStorage):如果未登录,则必须打开登录模式。

所以打开/关闭模态由布尔参数而非操作按钮来控制。

您知道如何在没有按钮操作的情况下打开登录模式吗?

提前致谢,

1 个答案:

答案 0 :(得分:1)

假设您有一个包含模态的组件。

export class YourModalComponent {
  constructor () {}

  public open(): void {
     //show modal
  }
}

然后你有一个检查本地存储的组件,并且YourModalComponent为子项。如果用户已登录,则只需致电modal.open()

export class YourParentComponent {
  @ViewChild(YourModalComponent)
  public yourModal : YourModalComponent;

  constructor() {}

  public ngAfterViewInit(): void {
    //check if user is logged in
    if(!userIsLoggedIn) {
       this.yourModal.open();
    }

  }
}

您还可以div显示ngIf,以便YourModalComponent仅在符合条件时显示。