【发布时间】:2012-03-12 06:13:18
【问题描述】:
我正在研究 ExtJs,并试图找到组织我未来项目的最佳方式。 我从 ExtJs MVC 教程开始http://docs.sencha.com/ext-js/4-0/#!/guide/application_architecture
我不喜欢这个架构中的一些东西: 控制器“了解”视图小部件并以这种方式添加事件侦听器
this.control({
'viewport > userlist':{
itemdblclick:this.editUser
},
'useredit button[action=save]':{
click:this.updateUser
}
});
我们正在启动一个包含 500 多个表单的大型项目。 我相信在这么大的项目中,这种方法会造成很大的混乱。 有没有办法解耦控制器和视图?
例如,在 GWT 中,他们使用 MVP 模式,其中 Presenter 不知道视图的内部结构 并通过“显示”界面与视图交互。 我知道,Javascript 没有接口,但可能有一些方法可以在 Extjs 中模拟它们。
我希望我的控制器是这样的:
editButton = viewInterface.getEditButton();
editButton.on('click', function(btn, e, eOpts) {
eventBus.fireEvent(editUserEvent);
});
有可能吗?
【问题讨论】:
标签: architecture extjs extjs4 mvp