【发布时间】:2014-06-23 04:26:23
【问题描述】:
希望你能帮助我!
我的 Ember 应用程序(Ember 1.5.1)有两个模型(Ember Data beta7):项目和标签。项目有很多标签。
我还有一个不更新的标签上的计算属性。计算属性是一个简单的检查,看是否有任何标签(即不为空)。我尝试过各种各样的事情。我到了arrayComputed,然后停了下来。检查异步相关模型的计数是否高于 0 应该是相当简单的!我试过“tags.[]”、“tags.@each”、“tags.@each.status”、“tags.@each.isLoaded”、“tags.length”和其他各种东西。
belongsTo 上的计算属性工作正常。
App.Item = DS.Model.extend({
tags: DS.hasMany("tag", inverse: "item", async: true),
hasTags: function() {
return !Em.isEmpty(this.get("tags"));
}.property("tags")
});
App.Tag = DS.Model.extend(
item: DS.belongsTo("item", inverse: "tags"),
hasItem: function() {
return !Em.isEmpty(this.get('))
}.property("item")
);
如果我把它改成这样,那么日志就会打印出一行,所以承诺实际上正在履行和加载。我只是不知道要在计算属性上放置什么以使其在承诺履行时重新加载。我觉得我错过了一些非常明显的东西:
App.Item = DS.Model.extend({
tags: DS.hasMany("tag", inverse: "item", async: true),
hasTags: function() {
this.get("tags").then(function(tags) {
console.log("The tags are loding if this is printed");
});
return !Em.isEmpty(this.get("tags"));
}.property("tags")
});
[编辑] 2014 年 5 月 7 日
好的,所以我没有完全正确地解释这个问题,我猜是因为我没有完全理解出了什么问题......我在以下堆栈溢出问题中继续了这个问题:Route's Model Hook with Ember Data "filter" not loading dependent computed property
【问题讨论】:
标签: javascript ember.js ember-data