Ionic/Firebase: вход после выхода не работает

Я создаю приложение Ionic/Phonegap с бэкэндом Firebase.

Авторизоваться

Следовал примеру из официальной документации AngularFire для входа в систему:

// Check sign-in data
$scope.signIn = function(user, password) {

    // Log in
    $scope.auth.$authWithPassword({
        email    : user,
        password : password
    })

    // If successful
    .then(function(authData) {
        console.log('worked');
        // Further code
    }

    // If failure, alert
    .catch(function(error) {

        console.log(error);
    }
}

Логин работает нормально.

Выйти

Для выхода из системы я также скопировал пример из документации:

$scope.logout = function() {

    // Manually disconnect from database
    Firebase.goOffline();

    // Log user out
    $scope.auth.$unauth();

    // Go to landing page
    $state.go('signin');
};

Кажется, работает также (когда я запрашиваю текущее состояние аутентификации пользователя после выхода из системы, $getAuth() возвращает null).

Войти после выхода

Но если я сейчас пытаюсь войти снова, ничего не происходит - ни ошибки, ни сообщения об успехе. Так что ни один из console.logs не запускается.

Мне нужно закрыть и снова открыть приложение или обновить окно браузера, чтобы снова войти в систему. Может кто-нибудь сказать мне, что я здесь делаю не так?


Версии

Используя последние версии:

Ионная 1.2.4

Firebase 2.4.0

AngularFire 1.1.3

1 ответ

Решение

Удалить Firebase.goOffline() из вашего выхода. Если вы хотите вручную управлять подключением Firebase, то вы должны рассмотреть возможность добавления Firebase.goOnline() во время входа.

Auth. $ Unauth() позаботится о выходе пользователя из системы, вам не нужно отключать Firebase вручную.

Другие вопросы по тегам