我遵循官方https://material.angular.io/components/dialog/overview,它聲明如果對話框組件本身必須關閉,我們需要注入如下的MdDialogRef引用,然後關閉一個事件MdDialogRef.close在回調中調用時沒有關閉對話框fn
export class LoginDialogComponent {
constructor(public dialogRef: MdDialogRef<LoginDialogComponent>,
@Inject(MD_DIALOG_DATA) public data: any, public afAuth: AngularFireAuth, private router: Router) {
}
closeDialog(): void {
this.dialogRef.close();
}
signInWithGoogle() {
const self = this;
this.afAuth.auth
.signInWithPopup(new firebase.auth.GoogleAuthProvider())
.then(res => {
self.closeDialog();
});
}
}
在Google OAuth的成功響應中,我看到調用了closeDialog()。但是,該對話框未關閉。 [我沒有關閉對話框作爲setTimeOut/UserAction的一部分]
礦是一個不同的,我試圖關閉對話'在回調事件'。如上所述,我沒有打開/關閉用戶輸入操作的問題。 – nsk