Ember.js 余烬操作:仅设置每个目标的属性
我对循环中的每个项目都有一些操作。目前,这一行动揭示了所有的书籍封面,而不是我只想针对一个 看起来我可以传递一个参数,但我不确定语法 我以前在早期版本中做过,记得使用过这个,或者应该使用它 {{action'showCover'book}} 控制器 其他想法。。。 样板 另外,如果你能想出一个更简洁的标题,请为这篇文章推荐一个标题Ember.js 余烬操作:仅设置每个目标的属性,ember.js,ember.js-2,Ember.js,Ember.js 2,我对循环中的每个项目都有一些操作。目前,这一行动揭示了所有的书籍封面,而不是我只想针对一个 看起来我可以传递一个参数,但我不确定语法 我以前在早期版本中做过,记得使用过这个,或者应该使用它 {{action'showCover'book}} 控制器 其他想法。。。 样板 另外,如果你能想出一个更简洁的标题,请为这篇文章推荐一个标题 @治安官,你已经在你的问题中提供了答案。可以在操作名称之后传递其他参数。比如: <button {{action "showCover" book}}>S
@治安官,你已经在你的问题中提供了答案。可以在操作名称之后传递其他参数。比如:
<button {{action "showCover" book}}>Show Cover </button>
使用余烬旋转的工作示例:您应该调用book.set'coverVisible',true;因为您想要设置书本本身的属性
actions: {
showCover: function(book) {
book.set('coverVisible', true);
}
嗯,我把书传给了行动。。。作为动作助手中的一个参数…-我已经让它像你从文档中看到的那样工作-但它的行为不像我期望的那样:/Hi@LukeC我也这么认为,但未捕获的TypeError:book.set不是一个函数。。。你可以看到余烬在旋转~我已经按照你的建议设置好了。
{{#each model as |book|}}
<li class='book'>
<article>
{{#if book.coverVisible}}
<figure class='image-w book-cover'>
<img src='{{book.cover}}' alt='Cover for {{book.title}}'>
</figure>
{{/if}}
...
{{#if book.cover}}
{{#unless book.coverVisible}}
<div {{action 'showCover'}} class='switch show-cover'>
<span>Show cover</span>
</div>
{{/unless}}
{{/if}}
{{/each}}
<button {{action "showCover" book}}>Show Cover </button>
actions: {
showCover: function(book) {
book.set('coverVisible', true);
}