Ember 2,显示空模型的消息,而不是在hbs模板中加载,每个或如果

时间:2017-03-24 13:54:02

标签: javascript ember.js handlebars.js ember-data

我经常在我的代码中使用(我不知道我是否正确使用它):

{{#each model.posts as |post|}}

  <div>post.title</div>

{{else}}

  <div>I'm loading the posts...</div>

{{/each}}

直到今天一切都还好。

但现在我不知道model.posts是否为空。

如何显示错误而不是永远加载一个空数组?

2 个答案:

答案 0 :(得分:2)

模型上的关系会返回 public String getCurrentEnvironment() { return currentEnvironment; } public void setCurrentEnvironment(String currentEnvironment) { this.currentEnvironment = currentEnvironment; } ,并将其解析为PromiseArray。在RecordArray,您可以查看isLoaded。但是,您无法访问此媒体资源,因为RecordArray不会将其代理到底层PromiseArray。但是,RecordArray会实现PromiseProxyMixin,其中PromiseArrayisPending可用。

结帐this twiddle以获得有效的解决方案。

基本上这是工作代码:

isSettled

答案 1 :(得分:1)

我想到了这两个选项:

  1. 使用ember-promise-helpers,可以直接在模板中使用:https://github.com/fivetanley/ember-promise-helpers

  2. 如前所述,如果您正在使用RecordArray,请检查isLoaded属性。