-1

I'm a novice in ember and I'm building a test app with ember.js. It's a calendar. I need to group events by day of week. In my controller I have something like this:

Calendar.WeekController = Ember.ArrayController.extend
  sunday: ( ->
    @get('content').filterProperty('dayOfWeek', 0)
  ).property('content.@each.dayOfWeek')
  monday: ( ->
    @get('content').filterProperty('dayOfWeek', 1)
  ).property('content.@each.dayOfWeek')

# for all days of week

In my template:

ul
  each sunday
    li = description

I think that looks wrong, but I have no idea how to improve this. Is there a better way to do this?

4

1 回答 1

0

动态创建您的组。

Calendar.WeekController = Ember.ArrayController.extend
  groups: (->
    content = @get('content')
    for dayOfWeek in [0..6]
      Ember.Object.create
        dayOfWeek: dayOfWeek
        events: content.filterProperty('dayOfWeek', dayOfWeek)
  ).property('content.@each.dayOfWeek')

在您的模板中:

each groups
  / TODO: Convert number to day name, for example, Sunday, Monday, etc.
  h1 = dayOfWeek
  ul
    each events
      li = description
于 2013-08-25T02:55:43.477 回答