是的,我会将我们对MVC所做的更改称为4.2非常重要; 然而,向后兼容始终是我们的首要任务.我确实承认,在4.2之前,MVC实现存在许多长期未解决的问题,这促使人们跳过所有类型的箍来做他们需要的事情.我们一直在尝试解决这些问题并简化MVC体验,同时添加针对拥有大型应用程序的开发人员的几项功能.4.2 beta 2将包含大部分内容,我们很乐意听取您对它们的反馈.
我计划在4.2发布之前写下这些改进,但这里是一个快速列表:
Ext.app.EventBus就像@sra提到的那样,现在是一个单身人士,并且在您的应用程序中始终可用 - 尽管直接使用它没有多大意义Ext.app.Controller不再依赖于Ext.app.Application做事情,并且可以在不提出整个依赖树的情况下进行实例化 - 这意味着您可以对控制器进行单元测试!Ext.app.Application,并在此类中包含您的逻辑Ext.application()不再是无法形容的黑魔法; 在传递Application类名时,它只是实例化它.如果你像以前一样传递一个配置对象,它将使用这些配置选项声明新的Application类,并实例化它 - 与上面相同的逻辑,执行有点不同Ext.application()不再需要同步所有的依赖树(它曾经用过),所以这是值得注意的一件事Ext.app.Application现在正确处理自己的祖先,可以在您的应用程序中用作顶级控制器对于向后兼容性有一些更少的改进和黑客,主要涉及依赖性跟踪.如果你不做一些过于疯狂的事情,这些不应该绊倒你.如果你这样做,这就是Betas的用途.:)
希望这可以帮助!
不,除非你做的事情很奇怪,否则你不必担心.
那么主要的变化是控制器不再需要一个Ext.app.Application实例.这是由于更改了Ext.app.EventBus现在的单例,因此所有控制器都可以使用相同的实例.
这就是我现在所知道的.如果我获得新信息,我可能会更新我的帖子