Как инкапсулировать js файл для определенного модуля в nodejs? В общем есть модуль, допустим login.ejs + login.js.
Вопрос: как сделать так, чтобы область видимости login.js была только на уровне login.ejs?
Другими словами, как сделать так, чтобы если на странице есть 2 класса .button то вызов $('.button') находил бы только тот, который в login.ejs?
PS: .ejs - html файл.
Подробнее:
Если пользователь не зарегистрирован то я инклужу регистрацию:

login.ejs выглядит так:
Login


Password


Login
Тоесть я перед HTML добавляю еще и ссылку на скрипт с js обработчиком. И мне нужно чтобы этот js обработчик видел только эту форму (login.ejs), а весь остальной HTML на странице игнорировал.

21 Авг 2019 в 07:08
195 +1
0
Ответы
1

Для того чтобы инкапсулировать функциональность из login.js так, чтобы она применялась только к определенной области в login.ejs, можно воспользоваться модульностью и использованием анонимной функции (IIFE - Immediately Invoked Function Expression).

Вот пример того, как можно изменить содержимое login.js:

(function() {
// Код здесь будет доступен только в области видимости этой IIFE
// например, следующий код будет применяться только к элементам в login.ejs
$('.button').on('click', function() {
// код для обработки клика по кнопке
});
// Другие функции или переменные, объявленные здесь, также будут видны только внутри этой IIFE
})();

Теперь код в login.js будет работать только в области видимости, которая ограничена этой анонимной функцией. Таким образом, он не будет взаимодействовать с другими элементами на странице, за исключением тех, которые находятся в области login.ejs.

Примечание: Убедитесь, что $ объект JQuery доступен в вашем проекте, если вы используете его в login.js. Если он не был загружен до выполнения login.js, скрипт может не работать корректно.

20 Апр в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 017 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир