日期:2014-05-16  浏览次数:20404 次

ExtJS 升级到4.0.7的问题

升级 ExtJS 至 4.0.7 时遇到的几个小问题

1、 新的类库体系

旧的类定义方式为:
?
1
2
3
4
5
6
App.view.Viewport = Ext.extend(Ext.panel.Panel, {
???initComponent: function() {
??????// call parent initComponent method
??????App.view.Viewport.superclass.initComponent.apply(this, arguments);
???}
});
新的类定义方式为:
?
1
2
3
4
5
6
Ext.define('App.view.Viewport', {
???initComponent: function() {
??????// call parent?
??????this.callParent(arguments);
???}
});

2、 Ext.Loader 动态加载 js 文件

4.0.7 版本的 Ext.Loader 默认是未启用动态加载的, 导致运行时会报错, 要手工设置启用动态加载, 启用动态加载的代码为:
?
1
Ext.Loader.setConfig({? enabled: true });
Ext.Loader 还有几个有用的参数(paths、 disableCaching)等, 可以查看相关 Ext.Loader API。

3、 Ext.panel.Panel 的 onResize 方法已经删除

没错, Ext.panel.Panel 的 onResize 方法已经删除, 重写 onResize 方法的类需要稍微修改一下, 推荐使用 componentLayout 事件或者 afterComponentLayout 方法。

4、