Цитата:
|
Коммит изменений переносится на представление. Не нужно дергать dispatchItemChange (классический notifyObservers). Представления на Event.RENDER изменяются в соответствии с текущими изменившимися свойствами модели. Профит.
|
Отложенная валидация?
Ресурсы, оно, конечно экономит.
Но в модели реализуется не проще, чем редиспетчинг.
Плюс в обработчике onRender во вьюхе будет куча if (model.fieldChanged) {...}.
Хотя, когда порядок изменений вьюхе известен - их проще держать под контролем - надо взять на вооружение.
Но автора, по-моему именно проброска изменений с детей в старшие модели напрягала.
Стоп!
Код в модели

Код AS3:
public function set money(value:int) {
_money = value;
moneyChanged = true;
}
public var moneyChanged:Boolean = false;
Код во вьюхе

Код AS3:
public function onRender(event:Event):void {
if (_model.moneyChanged) {
_moneyTF.text = _model.money + "$";
_model.moneyChanged = false;// А другие модели как будут изменения слушать?
}
}
Как это делается то, где флаги изменений сбрасываются?
Просто в ENTER_FRAME всё подрят сбрасывается? Потому что он должен сработать после RENDER?