У меня есть приложение Ionic, созданное с использованием Firebase и Angular.
У меня возникает проблема, когда пользователь возвращается в приложение после простоя и проводит пальцем вниз, чтобы обновить фид, иногдазагрузка занимает 30 секунд.
Примерно в 70% случаев обновление происходит мгновенно после возвращения в приложение, иногда я возвращаюсь через 8 часов и провожу пальцем вниз, чтобы обновить, и это буквально мгновенно.
Тем не менее, 30% времени занимает оооо долго.Может быть, 30-40 секунд.Это смехотворно долго, и нет никаких очевидных причин для этого.
Мне интересно, знает ли кто-нибудь о том, в чем здесь может быть проблема ... Если бы мне пришлось угадывать, я бы сказал, что это потому, что подключение к Firebase занимает много времени, но я не уверен, какЯ могу это исправить?Похоже, это не основано на связи.
Мой код для прокрутки вниз:
doRefresh(refresher) {
this.goToNew(true);
refresher.complete();
}
и this.goToNew()
:
this.database.database.ref('/posts/'+this.feedId)
.orderByChild('created')
.limitToLast(10)
.once('value', (snapshot) => {
snapshot.forEach(child => {
this.feedCounter.push(child.val());
this.postFeed.push(child.val());
this.postFeed.sort(function(a,b){
return +new Date(b.created) - +new Date(a.created);
});
if(this.feedCounter.length >= 10) {
this.firstRun = false;
}
return false;
});
Я понятия не имею, что может быть причиной этой проблемы ... Любойидеи?
Спасибо!