如何从Meteor.js中的另一个模板事件触发模板的EventMap事件?

时间:2013-03-20 08:40:50

标签: javascript meteor

我偶然发现了Meteor.js中一个非常时髦的要求 - 我有2个按钮(“作为孩子提交”和“作为兄弟提交”)和对按键做出反应的文本输入。按钮可以自己工作,但是我想从输入的keydown事件中触发使用Template.my_template.events(...)创建的“click”事件。

我设法使用以下使用EventMap和rendered()回调的构造(coffeescript)编写脚本:

Template.my_template.events = 

    'keydown input': () -> reactToPressedKey();

Template.my_template.rendered = () ->

    $('click .submit_child').bind 'click', () -> doStuff();
    $('click .submit_sibling').bind 'click', () -> doStuff();

它的工作方式与我预期的一样,但我想知道是否有更好的解决方案,比如只使用EventMap(Template.my_template.events)?

1 个答案:

答案 0 :(得分:-1)

将事件放在另一个模板中。

Template.other_template.events 
  'click .submit_child': doStuff
  'click .submit_sibling': doStuff

Template.my_template.events
  'keydown input': reactToPressedKey