从click事件更改属性时重新呈现模板

时间:2013-07-30 13:54:55

标签: meteor

我想从onclick函数触发我的手柄模板中块的可见性。我可以使用会话和帮助函数来实现这一点,但它似乎有点过分。

<template name="eventlist">
   {{#each eventcollection}}
    <div class="eventcontent">
     name: {{name}} <br>
     {{#if showdetail}}
       detail: {{detail}}
     {{/if}}
    </div>
   {{/each}}
</template>

有可能让它以某种方式工作吗?

Template.eventlist.events = {
   'click .eventcontent': function() { this.showdetail = true}
}
流星只需检查事件完成后是否有任何属性发生变化,然后重新呈现模板

1 个答案:

答案 0 :(得分:0)

为什么要打扰流星?在古老的Javascript时代,这些事情很容易实现:

<template name="eventList">
    {{#each eventCollection}}
        <div class="eventContent">
            name ...
            <span class="eventHidden" style="display: none;">
                detail ...
            </span>
        </div>
    {{/each}}
</template>


Template.eventList.events({
    'click .eventContent': function(e) {
        $(e.target).find('.eventHidden').toggle();
    },
});