每次你打电话
signInWithPopup(...)
它将显示一个弹出窗口,要求用户登录。因此,只有在检测到用户未登录时才应调用此方法。最简单的方法是从
onAuthStateChanged
回调:
firebase.initializeApp(config);
var provider = new firebase.auth.GoogleAuthProvider();
...
public onAuthStateChanged(context: any, user: any) {
if (user) {
console.log(user);
...
}
else {
firebase.auth().signInWithPopup(provider);
}
...
}