查询大量数据时,Ember会阻塞

时间:2015-05-07 01:15:39

标签: ember.js ember-data

我有一条路线可以查询1000条记录(通过ember-data)并显示它们。

一开始这个查询在route#model,我有一个加载覆盖页面,所以整个页面将在模型钩子承诺完成后真正显示出来。

现在我在同一页面上有一个搜索框,它可以查询任何记录但是它正在查询另一个端点,所以它不需要等待模型钩子完成。

由于该搜索框不依赖于模型,我想立即使用该搜索框。我将查询代码移到模型钩子之外,并在fetchData中发送view#didInsertElement动作,它将在路由中调用相应的动作,执行findQuery并将响应存储到控制器。因此页面会立即显示该搜索框,并开始获取数据。

问题是,在获取数据时,整个UI停止。我无法在搜索框中输入任何内容,仍然需要等待某些内容,这违背了我原来的目标。

有谁知道为什么会发生这种情况以及如何解决这个问题?我正在使用以下版本的Ember。 (不是最新的,我知道)

DEBUG: Ember     : 1.7.1
DEBUG: Ember Data: 1.0.0-beta.7+canary.b45e23ba
DEBUG: Handlebars: 1.3.0
DEBUG: jQuery    : 1.11.2

0 个答案:

没有答案