过滤关系

时间:2015-04-22 09:17:44

标签: ember.js ember-data

我有以下组件:

export default Ember.Component.extend({
  frontLayers: function() {
    return this.get( 'layerColours' ).filterBy( 'layer.aspect.angle', 'Front' );
  }.property( 'coordinate.@each.layerColours' )
});

其中layerColours有一个layer且其中一个aspect具有angle属性。

问题是过滤不起作用。在控制台中调试返回值只会给我[_super: function, nextObject: function, firstObject: Object, lastObject: Object, contains: function...]

如果我删除了filterBy,则会收到layerColours没有问题。

1 个答案:

答案 0 :(得分:1)

所以我偶然发现了这个问题:http://discuss.emberjs.com/t/ember-js-ember-data-filtering-in-controller-not-resolving-the-belongsto-relationship-whereas-template-does/4711/4

最终将frontLayers更改为:

  frontLayers: Ember.computed.filterBy('coordinate.layerColours', 'layer.aspect.angle', 'Front')

所有人都开始按原样工作。