我如何取消订阅 onAuthStateChanged

Inz*_*lik 4 javascript firebase firebase-authentication

以前我在浪费时间,firebase.auth.currentUsernull在应用程序加载时给了我,而我在应用程序加载时需要 auth 用户权限(或者回调也适用于我)。然后我决定使用onAuthStateChanged但现在我无法取消订阅它并且它一次又一次地发射,我只希望它给我suth并立即永远销毁

那么,我如何取消订阅这个东西:

firebase.auth().onAuthStateChanged(function(user) {
   if (user) {
       // User is signed in.
   }
});
Run Code Online (Sandbox Code Playgroud)

Inz*_*lik 17

弗兰克在这里回答了这个问题:Firebase 停止监听 onAuthStateChanged

根据文档, onAuthStateChanged() 函数返回

观察者的取消订阅功能。所以你可以:

var unsubscribe = firebase.auth().onAuthStateChanged(function (user) {
    if (user) {
       // User is signed in.
    }
});

unsubscribe();//this line will unsubscribe the observable :-)
Run Code Online (Sandbox Code Playgroud)