【发布时间】:2019-05-22 21:27:06
【问题描述】:
我有一个使用 Firebase 和 Angular 构建的 Ionic 应用。
我遇到了一个问题,当用户在应用空闲后返回应用并向下滑动以刷新提要时,有时需要 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;
});
我不知道是什么导致了这个问题...有什么想法吗?
谢谢!
【问题讨论】:
-
我们无法说出您的测试连接速度慢的原因。但是如果你enable debug logging,输出可能会给你一些信息。
-
@FrankvanPuffelen 我找到了解决方案.. 我想你可能有兴趣看看我是如何解决这个问题的 :)
标签: firebase cordova ionic-framework firebase-realtime-database ionic3