用于收集hasMany数据的computed属性

时间:2015-07-05 13:11:33

标签: ember.js

route有多个departuredates。我想创建一个计算属性,它收集所有value的{​​{1}}属性,并返回一个逗号分隔它们的字符串,并添加结束日期(departuredates + { {1}})每个。

示例:

  • " 01.01.2015 - 05.01.2015"
  • " 02.03.2016 - 2016年6月12日,2016年4月2日 - 2016年4月12日及#34;

我该怎么做? departuredate.value是否使用正确的属性?

应用/路线/ model.js

route.duration

应用/ departuredate / model.js

departuredates.@each.value

1 个答案:

答案 0 :(得分:1)

未经测试,但这样的事情应该有效:

departuredateText: Ember.computed('duration', 'departuredates.@each.value', function() {
  return this.get('departuredates').map((departuredate) => {
    // compute `endDate` using moment.js or something
    // (just adding up the date and number will not work).
    const endDate = departuredate.get('value') + this.get('duration');

    return `${departuredate.get('value')} - ${endDate}`;
  }).join(', ');
})

这有意义吗?