里面 parent-component.hbs
{{yield (hash child=( component 'child-component' onaction=(action 'parentAction') ) )}}
里面 parent-component.js
export default Ember.Component.extend({ actions: { // 我们将此操作传递给孩子,由其自行决定调用 parentAction(childData) { alert('Data from child-component: ' + childData); } } });
里面 child-component.js
export default Ember.Component.extend({ // 单击时,我们调用从父级传递给我们的操作 click() { let data = this.get('data'); this.get('onaction')(data); } });
里面 usage.hbs
{{#parent-component as |ui|}} {{#each model as |item|}} {{ui.child data=item}} {{/each}} {{/parent-component}}