繁体   English   中英

将1个事件处理程序用于多个模板

[英]Using 1 event handler for multiple templates

我一直在使用通常的Blaze Template.events处理事件的方式。 目前,我在多个模板上有很多相同的事件。

我很好奇是否有人知道一种方法来处理多个模板的事件,而不必为每个不同的模板使用多个Template.events调用

(您可以只编写一个事件处理程序以应用于多个模板)。

如果我切换到Meteor-React,我认为可以这样做,但目前我不愿意这样做。

您可以使用此包称为meteor-body-events

meteor add gwendall:body-events

他们的git页面是这样的: https : //github.com/gwendall/meteor-body-events

我在上一个项目中使用了它,并且它按预期运行,但是,现在我看到该项目不再维护。 我相信它应该仍能按预期工作。

来自他们的git页面的示例:

Template.body.events({
  "click .btn": function(e, data, tpl) {
    // e -> jquery event
    // data -> Blaze data context of the DOM element triggering the event handler
    // tpl -> the parent template instance for the target element
  }
})

因此,基本上,您将事件侦听器标记到主体一次,它将对所有模板都有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM