Показать сообщение отдельно
  #110 (permalink)  
Старый 19.04.2011, 17:38
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Не не не, Девид Блейн.

Вот, например, есть объект, описывающий тег:
var data = {
  value: 'text',
  display: false
}


Код модуля:
function module(data){
  // Изменяем данные
  data.text = 'new text';
  data.display = true;
}


Как это всё выглядит с наружи:
var data = getData(); // получаем объект data

// Ситуация - обрабатываем событие. Для этого передаем объект data всем модулям, которым он принадлежит
var modulesLength = modules.length;
while(modulesLength--){
  modules[modulesLength](data); // Модули сделали всё, что им необходимо
}

// Обновляем представление в соответствии с объектом data.
update(data);


Отсюда видно, что представление изменится только после выполнения обработчиков модулей. Что бы можно было учесть эту ситуацию - я и предложил это решение. Цепочки тут не нужны.

Сообщение от x-yuri
ну асинхронность она определенно усложняет.
Согласен. Это выглядит как асинхронность на уровне кода, но по сути это событие.
__________________
Болтовня ничего не стоит. Покажите мне код. — Linus Torvalds
влад.куркин.рф

Последний раз редактировалось B~Vladi, 19.04.2011 в 17:41.
Ответить с цитированием