Performance Ember.js应用程序的加载时间非常长

Performance Ember.js应用程序的加载时间非常长,performance,ember.js,load-time,Performance,Ember.js,Load Time,我正在使用Ember.js为我的公司建立一个网站 我遇到的问题是页面的初始加载时间大约为10秒 我不能给你chrome的分析数据,因为我不能让他们停止工作。 然而,当我看到它们时,我注意到有一个名为Get的函数,它总共需要8.5秒。我意识到这可能只是Ember.Get的许多用法,但这仍然只是最初的页面加载 我不知道这是否正常,但这是非常不愉快的。我能做些什么吗 谢谢,Jason尝试使用一个生产版本——缩小版的ember.js,它使用的get速度要快得多 您正在呈现一些非常大的列表吗?如果是这样,

我正在使用Ember.js为我的公司建立一个网站

我遇到的问题是页面的初始加载时间大约为10秒

我不能给你chrome的分析数据,因为我不能让他们停止工作。 然而,当我看到它们时,我注意到有一个名为Get的函数,它总共需要8.5秒。我意识到这可能只是Ember.Get的许多用法,但这仍然只是最初的页面加载

我不知道这是否正常,但这是非常不愉快的。我能做些什么吗


谢谢,Jason

尝试使用一个生产版本——缩小版的ember.js,它使用的get速度要快得多

您正在呈现一些非常大的列表吗?如果是这样,请使用列表视图进行查看

如果有大量字段被绑定,而这些字段从未更改,请将其修改为未绑定

{{unbound someField}}
如果您遇到了一些奇怪的问题,其中一个模板花费了很长时间,但您不确定它是哪一个,那么您可以在模板的开头添加一些时间戳日志来跟踪罪魁祸首。在底层,我迅速找到了一个助手。在模板中,您可以这样使用它。它将打印一个带有传入数据点的时间戳

{{logTime this}}
{{logTime name}} 



Ember.Handlebars.helper('logTime', function(someField){
  var d = new Date,
    timestamp = d.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1") + "." + d.getMilliseconds();
  console.log(timestamp + " - " + text);
  return "";
 });

试着使用一个生产版本——缩小版的ember.js,它使用的get速度要快得多

您正在呈现一些非常大的列表吗?如果是这样,请使用列表视图进行查看

如果有大量字段被绑定,而这些字段从未更改,请将其修改为未绑定

{{unbound someField}}
如果您遇到了一些奇怪的问题,其中一个模板花费了很长时间,但您不确定它是哪一个,那么您可以在模板的开头添加一些时间戳日志来跟踪罪魁祸首。在底层,我迅速找到了一个助手。在模板中,您可以这样使用它。它将打印一个带有传入数据点的时间戳

{{logTime this}}
{{logTime name}} 



Ember.Handlebars.helper('logTime', function(someField){
  var d = new Date,
    timestamp = d.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1") + "." + d.getMilliseconds();
  console.log(timestamp + " - " + text);
  return "";
 });

我想如果我们看不到你的代码,我们就帮不了你这么多/至少我知道这很不方便,但无法显示代码。请问我任何你想知道/能想到的可能有问题的事情。我想如果我们看不到你的代码,我们帮不了你这么多/我知道这很不方便,但无法显示代码。请问我任何你想知道/能想到的可能有问题的事情。谢谢你的优化提示,我明天会在工作中尝试使用缩小版。对于我的大列表,我使用的是余烬表。但是,当应用程序加载时,表是空的。所以这不是一个因素。因此,困扰我的是,当我的应用程序第一次加载一些空视图时,绑定和数据非常少-所有数据在我订阅时都会被填充,而且加载速度仍然非常慢..如果你在加载时查看网络选项卡,它是否能更深入地了解加载所花的时间?这有点让人困惑,因为我们在不到一秒钟的时间内绑定了200多个字段,可能有7个出口和10多个视图。你在使用chrome/ie/ff吗?当我查看网络选项卡时,它说大部分时间都花在编写脚本上,所以我记录了JavaScript配置文件,直到页面加载为止,我在上面报告的内容就是我注意到的。今天我将花更多的时间在这个问题上,看看我能想出什么。有一些真正大的数据集吗?某种递归依赖性问题?您还可以做一些额外的日志记录来尝试找出哪个模板可能是罪魁祸首。我将在上面的原始答案中包含一些代码。感谢您提供的优化提示,我将在明天的工作中尝试使用缩小版。对于我的大列表,我使用的是余烬表。但是,当应用程序加载时,表是空的。所以这不是一个因素。因此,困扰我的是,当我的应用程序第一次加载一些空视图时,绑定和数据非常少-所有数据在我订阅时都会被填充,而且加载速度仍然非常慢..如果你在加载时查看网络选项卡,它是否能更深入地了解加载所花的时间?这有点让人困惑,因为我们在不到一秒钟的时间内绑定了200多个字段,可能有7个出口和10多个视图。你在使用chrome/ie/ff吗?当我查看网络选项卡时,它说大部分时间都花在编写脚本上,所以我记录了JavaScript配置文件,直到页面加载为止,我在上面报告的内容就是我注意到的。今天我将花更多的时间在这个问题上,看看我能想出什么。有一些真正大的数据集吗?某种递归依赖性问题?您还可以做一些额外的日志记录来尝试找出哪个模板可能是罪魁祸首。我将在上面的原始答案中包含一些代码。