我用li
元素包装我的组件。没关系。但我也试图将动作添加到wrapped
元素..但是得到错误。将action
添加到包装元素的正确方法是什么?
任何人帮助我?
我的组件:
<ul>
{{#each cardList as |card index |}}
{{
cs2i-cardcomponent
card=card
index=index
enableNext='enableNext'
tagName="li"
{{action "selectCard card index" }}//not works. trying to pass card and index to selected card in actions object in componet.js.
}}
{{/each}}
</ul>
我的组件js:
import Ember from 'ember';
export default Ember.Component.extend({
tagName:"",
firstBalanceType : '',
firstBalanceAmount : '',
lastBalanceType : '',
lastBalanceAmount : '',
isSelected : false,
actions : {
selectCard : function(card,index) {
this.set('selectedIndex', index );
this.toggleProperty('isSelected');
this.sendAction('enableNext', card);
}
}
});
答案 0 :(得分:1)
在这里,您发送selectCard
关闭操作,该操作包含在当前上下文中定义的selectCard
函数。
{{cs2i-cardcomponent card=card index=index enableNext='enableNext' tagName="li" selectCard=(action "selectCard" card index)}}
除了上述内容,我将鼓励您将所需数据作为参数发送到组件,然后您可以将其发送到参数中的数据。