|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
Отслеживание выполнения dispatchEvent.
Доброго времени суток. Столкнулся с такой проблемой...
Есть некий класс, в нём диспатчится событие: dispatchEvent(new Event(MY_EVENT)); При выполнении события идёт отправка запроса на сервер и получение от него данных в другом классе. После чего, некоторой переменной, относительно этих данных присваивается значение (допустим, значение переменной var становится true). Суть в том, что запрос к серверу не успевает обработаться и вместо того, чтобы получить от сервера корректное значение var = true, значение var остаётся false: dispatchEvent(new Event(MY_EVENT)); if (var) { trace("complete"); } else { trace("fale"); } Но правильно ли это? А если обработка результатов на сервере займёт больше, чем 100 секунд или значительно больше времени. Поэтому хотел узнать, есть ли способ, при котором можно отследить выполнение dispatchEvent(new Event(MY_EVENT)), после чего уже производить необходимые действия с полученными переменными? |
|
|||||
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Можно, например, диспатчить событие изменения этой переменной в сеттере.
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
Я создал set и get для переменной var:
public function set var(nVar:Boolean):void { _var = nVar; } public function get var( ):Boolean { return _var; } А какое событие диспатчить, не пойму... |
|
|||||
Можно на URL запрос повесить слушатель события возвращения ответа (Event.COMPLETE), и вашу функцию получения ответа сделать в виде этого самого слушателя.
Тут главное привязаться к ответу сервера. Цитата:
Цитата:
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
Ошибся, разумеется 100 миллисекунд.
Сам запутался в трёх соснах... Event.COMPLETE уже висел на выполнение запроса. Добавил функцию, с передачей в аргументе значения var в тело функции приёмника и всё получилось. Спасибо за наводки. |
Часовой пояс GMT +4, время: 07:11. |
|
« Предыдущая тема | Следующая тема » |
|
|