Событие пожара Один раз после тайм-аута ИЛИ другое событие завершено - PullRequest
1 голос
/ 08 января 2011

В настоящее время я запускаю пользовательское событие YUI, которое после завершения набора вызовов покоя завершается.Функция, отключающая панель загрузки, подписывается на пользовательское событие.Однако в случае, если время ожидания остальных вызовов по какой-то причине истекло, я все равно хочу отключить панель загрузки (панель загрузки скрывает фон и предотвращает взаимодействие с пользователем) и потенциально может вызвать всплывающее окно с сообщением о невозможности загрузки данныхполностью.Я думал, что простой тайм-аут поможет, но я не уверен, что это лучшее решение.Вот некоторый псевдокод:

var event = new Yahoo...CustomEvent("abc");
event.fireOnce = true; //I don't need to fire this event multiple times
event.subscribe(hideWaitBarFunction);
window.setTimeout(event.fire(), 10000);
//rest call
event.fire();  //if rest call doesn't return after 10 seconds, hide wait bar anyway

В этом случае событие должно запускаться только один раз.Предполагая на данный момент, что я не хочу всплывающее сообщение об ошибке, есть ли лучший способ сделать это?Мои знания javascript / yui ограничены.Дайте мне знать, если вещи нуждаются в разъяснении.

1 Ответ

0 голосов
/ 13 апреля 2012

Я предполагаю, что вы используете YUI 2.x, и в этом случае обратный вызов ConnectionManager имеет ловушку сбоя, где вы можете подключить это событие.Разве это не работает для вас?

...