簡體   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