2016-05-09 2 views
-1

Я создаю приложение для школьного проекта, и у меня есть некоторые проблемы с получением данных из базы данных Firebase. У меня есть некоторые данные, хранящиеся в базе данных, которые мне нужно получить. Тем не менее, в руководстве я только, кажется, нахожу информацию о том, как получать данные при срабатывании события. Я хочу, чтобы данные извлекались автоматически, например. когда я открываю рабочий стол приложения или когда я просматриваю окно, чтобы обновить рабочий стол.Как получить данные из базы данных Firebase без запуска события?

Очень возможно, что в руководстве есть объяснение, но если это так, я не смог его понять. Поэтому тщательное описание решения было бы очень оценено!

С уважением, Andreas

+0

Возьмите [5 минут Firebase учебник] (https://www.firebase.com/tutorial) для скорейшего введения как Firebase извлекает данные. –

ответ

3

Из-за асинхронной природы Firebase это единственно возможный способ получения данных.

Когда вы делаете запрос на свою Firebase, данные не доступны мгновенно. Когда данные станут доступными, Firebase вызовет событие и передаст вам данные. К сожалению, это не так.

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

Я надеюсь, что это ответит на ваш вопрос!

+0

Спасибо за ответ :) –

+0

Happy to help :) – Ashmore11

0

Если вы хотите получить текущий снимок ваших данных в тот момент времени, используйте Firebase.once(), в отличие от Firebase.on() он не прослушивает событие, он просто захватывает все данные в том месте, где он запускается (в вашем случае может быть на document.ready)

Пример:

var ref = new Firebase("https://xxxx.firebaseio.com/") 

firebaseRef.once('value', function(snapshot) { 
    // log all the data 
    console.log(snap.val()) 
}); 
+0

Метод 'Firebase.once()' не является android-java. – spassador

+0

Извините, пропустил тег в вопросе. – funador

Смежные вопросы