我的应用程序更新视图以响应模型调度的事件。但是如果模型没有改变,但我仍然需要更新视图怎么办。例如,我关闭并重新打开了一个弹出窗口。要显示的数据没有更改,但必须重新创建弹出中介和视图。我目前的解决方案是在调解器的 onRegister() 方法中强制初始化,如下所示:
// Inside of PopUpMediator.as
[Inject]
public var popUpModel:IPopUpModel;
[Inject]
public var popUpView:PopUpView;
override public function onRegister()
{
// Force initialization if the model hasn't changed
popUpView.foo = popUpModel.foo;
// Event based initialization
addContextListener(PopUpModelEvent_foo.CHANGE, foo_changeHandler);
}
将模型注入调解器不是一个好主意,所以我想知道在模型没有改变时初始化视图的最佳方法是什么?