Emberjs中的filterProperty,带有绑定属性

时间:2013-08-20 16:49:15

标签: ember.js coffeescript

我在emberjs工作,我正在尝试使用filterProperty,以便我可以在把手中调用{{#each messageFromGroup}}。但是,在尝试基于group.id进行过滤时,以下代码无效。但是(例如)在当前上下文中(在函数messageFromGroup中)console.log @get 'group.id将返回一个数字(例如2)。代码:

App.MessagesController = Ember.ArrayController.extend

  group: null

  needs: 'group'

  groupBinding: "controllers.group"



  messageFromGroup: (->

      return @get('model').filterProperty 'to', @get('group.id')

  ).property 'model.@each.to'

注意:如果我按如下方式编写代码,它会起作用,这使我相信查找@get group.id的问题就是问题。

App.MessagesController = Ember.ArrayController.extend

  group: null

  needs: 'group'

  groupBinding: "controllers.group"



  messageFromGroup: (->

      return @get('model').filterProperty 'to', 2

  ).property 'model.@each.to'

1 个答案:

答案 0 :(得分:0)

我想groupBinding是否有助于访问GroupController?我不知道,为什么这不起作用,但在这种情况下我不会使用绑定。我会使用别名。因此,请试试这个:

App.MessagesController = Ember.ArrayController.extend({
   ...
   group : Ember.computed.alias("controllers.group")
});

编辑:我刚看到这不是问题,因为你说group.id的logstatement工作正常。那么唯一的另一个问题可能是@get('group.id')正在返回一个字符串但你需要一个数字。