Поэтому, когда я выйти из Firebase, я получил в сочетанииВыход из системы Firebase Разрешение отклонено.
Error: permission_denied: Client doesn't have permission to access the desired data.
Я понимаю, что это происходит потому, что Логин сеанс завершается, некоторые из моих объектов не может получить доступ к данным firebase больше. Но как я могу отключить эти объекты до выхода из системы?
Для кнопки выхода из системы в одном из моих Ионных View, это просто позвонить firebase услуги:
function logout() {
auth.$unauth();
getCurrentUser();
};
function getCurrentUser() {
var authData = auth.$getAuth();
if (authData) {
$rootScope.userId = authData.uid;
$rootScope.currentUser = $firebaseObject(authRef.child("users").child(authData.uid));
return $rootScope.currentUser;
} else {
console.log("User is not login!");
$rootScope.userId = null;
$location.path("/auth/signin");
if ($rootScope.currentUser) {
$rootScope.currentUser.$destroy();
}
}
};
Так что я уничтожить $ rootScope.currentUser там. Я использую тот же getCurrentUser для страницы профиля. Таким образом, Ошибка не появилась. Но когда в других представлениях, у которых у меня есть еще $ firebaseArray, а также еще одна функция Ref.on («child_added», функция (snap) с тем же $ firebaseObject. Когда я просматриваю страницу профиля, тогда эта страница содержит как минимум 3 соединения firebase , Я получил 3 разрешения_определенных ошибок при выходе из системы (кнопка выхода на страницу профиля пользователя).
Мой вопрос: как отключить это соединение firebase до выхода из системы? Есть ли способ отключить ВСЕ подключение firebase - неважно AngularFire или обычная Firebase? Поэтому я могу выйти из системы, не беспокоясь о том, какое соединение firebase у меня еще нет? Также, поскольку кнопка «Выход» находится в области «Профиль», а другое - в другой области, я понятия не имею, как закрыть соединение что даже не в области профиля ...
Вы делаете что-нибудь, используя «$ onAuth»? Может быть, на вашем автозаводе? – jbdev
Да, да. Но использование onAuth по-прежнему не будет знать, что я должен закрыть при выходе из системы. Поскольку мои примеры повсюду. И большинство из них я не могу закрыть, когда оставляю вид, так как все они должны слушать обновление от firebase. –