我正在使用Ember.js为我的公司建立一个网站。
我遇到的问题是页面的初始加载时间大约为10秒。
我无法向您提供chrome的分析数据,因为我无法让它们失去工作。 然而,在看到它们时我注意到的是有一个名为“Get”的函数,它总共需要大约8.5秒。我意识到这可能只是Ember.Get()的许多用途,但这仍然只是初始页面加载。
我不知道这是否正常,但是非常不愉快。我能做点什么吗?
谢谢,杰森
答案 0 :(得分:3)
尝试使用生产版本(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 "";
});