首页 > 解决方案 > Ember 数据:何时使用 findAll() 而不是 query()?

问题描述

这是我发现自己遇到的模式:

我开始制作一个应用程序,我用它findAll()来获取[随机的]列表。

一旦应用程序使用大量数据进行测试,随机资源实例的数量就会增加。我需要限制屏幕上资源实例的数量。我需要开始对它们进行分页。为此,我需要查询字符串支持。例如page[offset]

所以findAll(criteria)query(criteria, querystring).

这是一种模式,findAll()开始看起来像一个开发占位符,供query()以后使用。

我可能误解了 for 的用途findAll()。真的findAll()不能使用分页(没有自定义适配器代码)吗?有人可以解释在什么情况下findAll()应该使用吗?

标签: ember.jsember-data

解决方案


我个人使用该findAll方法来获取出现在用户无法过滤的各种下拉列表和短列表中的数据。我使用queryandqueryRecord几乎所有其他东西。

以下是一些findAll可能会产生误导的细节:

  • findAll返回存储中存在的所有记录以及使用记录的适配器获取的数据。
  • 的返回findAll是双重的,首先您将收到存储的内容,然后将使用适配器获取的数据刷新它,可以使用reload标志覆盖此行为。

推荐阅读