Как создать событие, которое будет запущено на любой странице?
При создании помощника в шаблоне основного макета он не работает.
Template.layout.events
'click': ->
console.log "you clicked on the site"
Ответ 1
Вы можете использовать Template.body.events вместо Template.layout.events для создания событий для любого шаблона, который будет применяться ко всему в <body>
Ни один из ответов в настоящее время не является "неправильным" как таковым, они просто работают в разных ситуациях:
Карты событий, Template.body.events({}), на Template.body не применяются к элементам, добавленным в тело через Blaze.render, Iron -Router, Flow-Router jQuery или DOM API или сам элемент body. Если вы используете вышеизложенное, вам нужно будет добавить пакет body-events, чтобы иметь возможность использовать карту событий на теле, используя следующую команду:
meteor add gwendall:body-events
Если вы не используете ни один из пакетов рендеринга шаблонов выше, вы можете напрямую добавить их на карту событий тела, используя следующий код:
Template.body.events({
'click': function () {
alert("clicked on the page. oh yeah!");
}
});