Мне нравится RequireJS и, наконец, имеет некоторую модульность/инкапсуляцию в Javascript, но я попал в ловушку при передаче обратных вызовов в другой модуль.Как мне перехватить обратный вызов/обработку событий с помощью RequireJS
В частности, я создал модуль меню для своего приложения. Он может быть загружен другим модулем, из которого вы можете добавлять меню, используя открытую функцию в указанном модуле меню.
Теперь эти пункты меню могут иметь обработчики, например. отправку формы или нажатие, например. Кроме того, обратный вызов обычно будет обращаться к функциям, определенным частным образом/внутренне в вызывающих модулях, то есть тем, кто использует функцию меню.
Я пробовал:
- привязки событие к элементу перед его передачей в функцию меню, но это не сработало.
- передавая функцию обратного вызова в качестве второго параметра и связывания его в модуле меню
Ни один из них работал.
Любые идеи?
Некоторые код более подробно
Функциональный модуль меню
function addMenuItem(jqObj, evtHandler) {
console.log("Adding menu " + jqObj);
jqObj.click(evtHandler);
menuList.append($("<li>").append(jqObj));
}
функцию в меню Вызов с помощью модуля
function addSelectionMenuItem() {
satInput = $("<input type=search placeholder='search' />");
menuModule.addMenuItem(satInput, function() {
this.loadCzml(satInput.val());
console.log("Checking execution...");
});
}
Спасибо!