Использование Ember Component в списке

Я использую Ember Component(например, кнопку) в массиве:

{{#each employees as |employee|}}
   {{employee.first_name}}
   {{component "button" action='promoteEmployee' emp_id=employee.id}}
{{/each}}

И, в действии компонента на кнопку является нажатие кнопки (например):

pressButton: function(){
  this.sendAction('action', this.get('emp_id'));
}

Но, когда список сотрудников оказывается (например):

Алиса | Продвигать | Отметить | Продвинуть | Тесла | Продвигать |

И я нажимаю на кнопку, чтобы продвинуть сотрудника (скажем, сотрудника Марка), значение emp_id которого связано с Алисой (всегда первым сотрудником в списке) (а не с Марком), вы можете дать мне знать, куда я иду здесь не так?

1 ответ

Решение

Поэтому вам нужно передать идентификатор сотрудника в качестве параметра действия:

Шаблон:

{{#each employees as |employee|}}
    {{employee.first_name}}
    {{button action=(action 'promoteEmployee' employee.id)}}
{{/each}}

Составная часть:

actions: {
  pressButton(empId){
    this.get('action')(empId);
  }
}
Другие вопросы по тегам