0
Voltooid
GlobalListener обработка из разных мест
Виктор 6 jaar geleden
in Tips and Tricks
•
bijgewerkt door Vladimir Ovchinnikov (expert) 6 jaar geleden •
3
Это отличный слушатель, но я очень надеюсь, что появится возможность в разных местах кода описывать обработку событий.
Я стараюсь делать проект максимально читаемым, распределенным. В нем несколько файлов с функциями, объединенных смыслом, содержанием.
Но вот это ограничение вынуждает меня все обработчики изменений тегов выносить в один файл, где все в кучу - все обработчики от разных функций. Это ад какой-то. Портянка не читаемая..
Подписаться то я могу везде, а вот как обработать на стороне - не знаю. Как передать параметры, этого слушателя при сработке в другую функцию, которая будет размещена в другом файле скрипте, я не знаю. Может, есть такая возможность?
Customer support service by UserEcho
Добрый день.
Для обработки изменения тэгов можно использовать простые слушатели с событием EVENT_TAG_CHANGE.
Если же по каким-то причинам нужно использовать именно глобальный слушатель с EVENT_GLOBAL_TAG_CHANGE, то можно обрабатывать именованными функциями, объявленными за пределами глобального слушателя. В глобальном слушателе может быть только одна функция. Однако не запрещается внутри неё вызывать объявленные ранее, в т. ч. в глобальной области видимости. Нужные значения можно сохранять в переменные, которые находятся в области видимости этих функций (как вариант: в глобальные переменные).
Владимир, добрый день!
Я попробовал сделать то, что вы написали, у меня все получилось. Действительно, простое решение, а не догадался его применить. Спасибо!
Рады помочь.