Как определить, какой класс назвал функцию
-
27-09-2019 - |
Вопрос
На данный момент я работаю над Flex Front End и использовал Петрушка Рамки для передачи сообщений / событий вокруг.
Мне было интересно, есть ли простой способ для функции (в этом случае, конструктор события) для получения ссылки на объект, который его назвал?
Это означает, что определенное событие, которое я определяю, может быть отправлен только одним указанным классом. Мое мышление должна как-то проверять звонящего конструктора и бросить ошибку, если она не имеет правильного типа.
Я открыт для предложений альтернативных подходов здесь, но я бы в идеале хотел бы придерживаться использования подхода Сообщения петрушки, если вообще возможно.
Спасибо за чтение парней ..
Решение
Трассировка стека работает, но вы можете гораздо легче передавать ссылку на абонеров к функции и введите его.
function dispatchEvent(caller:*):void {
if(caller is SpecificClass) {
// then dispatch event
}
}
Другие советы
Отказ от ответственности: я не знаком с петрушкой.
Видеть Трассировка стека в ActionScript 3. Отказ Вы можете получить функцию вызывающего абонента из трассировки стека.
Тем не менее, есть одно, что.