[英]VERY slow connection when app is loading up
我面临一个非常关键的问题-我正在使用Ionic平台来开发我的应用程序。 我有一个需要尽快提供的对象,因此我正在尝试尽快加载。 但是,我注意到,当我第一次尝试加载时,它的加载速度比2秒钟后加载的速度要慢得多。
这是一个示例: http : //codepen.io/anon/pen/eNQyPB
angular.module('ionicApp', ['ionic','firebase'])
.controller('MyCtrl', function($scope, $firebaseObject) {
var fb = new Firebase("https://docs-examples.firebaseio.com/web/saving-data/");
$scope.foo = foo;
foo();
function foo() {
console.time('Done loading')
ret = $firebaseObject(fb).$loaded(function() {
console.timeEnd('Done loading');
});
}
});
打开控制台并刷新页面-查看立即调用函数foo()
所需的加载时间。 现在,删除对foo()
的调用,刷新它,然后单击HTML的正文,这将启动对foo()
的调用,看看与其他方法相比,对象加载的速度如何。 我将很高兴理解它为什么会如此行事,并找到解决之道。
谢谢你们
CodePen不是应用程序页面加载测试的最佳场所。 该页面必须先加载,然后才能加载沙盒iframe
。
同样,如果这是一个Ionic应用程序,则整个资产集将下载到设备上。 它将立即对用户可用。 因此,您唯一需要关注的加载时间就是数据加载。
在您的情况下,您正在做console.time()
,我每次都回到300-400ms左右,这非常快。
最有可能与构建新的Firebase参考并在加载后返回它有关。 您正在使用创建新参考
new Firebase("https://docs-examples.firebaseio.com/web/saving-data/");
该网址需要4.24秒来加载我的连接。 然后在foo()
函数中等待加载,然后执行另一个类似的方法
ret = $firebaseObject(fb).$loaded(function() {
console.timeEnd('Done loading');
});
总的来说,您的Codepen花费了我5秒钟以上的时间,因此总的时间包括等待您的参考网址加载以及Codepen页面的其余部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.