首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当应用程序加载时连接非常慢

当应用程序加载时连接非常慢
EN

Stack Overflow用户
提问于 2015-11-20 09:15:34
回答 2查看 986关注 0票数 0

我正面临一个非常关键的问题--我正在使用Ionic平台来开发我的应用程序。我有一个需要尽快提供的对象,所以我试图尽快加载。然而,我注意到,当我尝试加载它的第一次机会,我可以-它加载非常慢,而加载它2秒后。

下面是一个例子:http://codepen.io/anon/pen/eNQyPB

代码语言:javascript
复制
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()的调用,刷新它,并单击将启动对foo()的调用的HTML主体,查看加载的对象与其他方式相比的速度。我很乐意理解它为什么会这样,并想办法绕过它。

谢谢你,伙计

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-20 13:03:48

CodePen不是对应用程序进行页面加载测试的最佳位置。页面必须加载,然后加载沙箱化的iframe

另外,如果这是一个Ionic应用程序,整个资产集将被下载到设备上。它将立即提供给用户。因此,您将关注的唯一加载时间是数据加载。

在你的例子中,你正在做一个console.time(),我每次回来大约300-400毫秒,这是相当快的。

票数 1
EN

Stack Overflow用户

发布于 2015-11-20 09:31:47

它最有可能的做法是构建一个新的Firebase引用,并在加载之后返回它。您正在创建新的引用

代码语言:javascript
复制
new Firebase("https://docs-examples.firebaseio.com/web/saving-data/");

该url需要4.24s才能加载到我的连接上。然后在foo()函数中等待加载,然后执行另一个方法,如下所示

代码语言:javascript
复制
ret = $firebaseObject(fb).$loaded(function() {
      console.timeEnd('Done loading');
});

总的来说,您的代码依赖在我的连接上只需要超过5s,所以总时间包括等待您的引用url加载加上代码页的其余部分。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33822888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档