从 ExtJs 5 到 6. 简单的代码迁移
From ExtJs 5 to 6. Simple code migration
我不确定为什么,但我在 ExtJs 5
中运行的小代码现在在 ExtJs 6
中不起作用。这是一个非常基本的代码,看起来像这样:
//TestApp/app.js
Ext.Loader.setConfig({enabled:true, disableCaching:true});
Ext.application({
name:'TestApp',
appFolder:'/TestApp',
requires:['Ext.container.Viewport', 'Ext.layout.container.Border'],
controllers:['TestAppController'],
autoCreateViewport:true
});
============
//TestApp/view/Viewport.js
Ext.define('TestApp.view.Viewport',{
extend:'Ext.container.Viewport',
layout:'fit',
initComponent:function(){
Ext.apply(this,{
layout:{
type:'border'
},
items:[{
region:'west',
layout:'fit',
width:500,
collapsible:true,
collapseMode:'mini',
split:true,
autoScroll:true
},{
region:'center',
layout:'fit'
}]
});
this.callParent(arguments);
}
});
============
//TestApp/controller/TestAppController.js
Ext.define('TestApp.controller.TestAppControler',{
extend:'Ext.app.Controller',
init:function(){}
});
所以,当我 运行 我的应用程序时,我在控制台中看到,首先 ExtJS
css 库被加载,然后是主 ext-all.js
文件,然后app.js
,然后是 Viewport.js
,最后是 TestAppControler.js
。因此,库和所有应用程序源代码都已正常加载 - 我在控制台中清楚地看到了它。但是,我在浏览器中看到的只是一个空白页面。我想,我错过了一些东西,一些特定于 ExtJS 6
的代码(比如一些启动命令或类似的东西)。
这可能与 autoCreateViewport
is deprecated, try using mainView
相关。
我不确定为什么,但我在 ExtJs 5
中运行的小代码现在在 ExtJs 6
中不起作用。这是一个非常基本的代码,看起来像这样:
//TestApp/app.js
Ext.Loader.setConfig({enabled:true, disableCaching:true});
Ext.application({
name:'TestApp',
appFolder:'/TestApp',
requires:['Ext.container.Viewport', 'Ext.layout.container.Border'],
controllers:['TestAppController'],
autoCreateViewport:true
});
============
//TestApp/view/Viewport.js
Ext.define('TestApp.view.Viewport',{
extend:'Ext.container.Viewport',
layout:'fit',
initComponent:function(){
Ext.apply(this,{
layout:{
type:'border'
},
items:[{
region:'west',
layout:'fit',
width:500,
collapsible:true,
collapseMode:'mini',
split:true,
autoScroll:true
},{
region:'center',
layout:'fit'
}]
});
this.callParent(arguments);
}
});
============
//TestApp/controller/TestAppController.js
Ext.define('TestApp.controller.TestAppControler',{
extend:'Ext.app.Controller',
init:function(){}
});
所以,当我 运行 我的应用程序时,我在控制台中看到,首先 ExtJS
css 库被加载,然后是主 ext-all.js
文件,然后app.js
,然后是 Viewport.js
,最后是 TestAppControler.js
。因此,库和所有应用程序源代码都已正常加载 - 我在控制台中清楚地看到了它。但是,我在浏览器中看到的只是一个空白页面。我想,我错过了一些东西,一些特定于 ExtJS 6
的代码(比如一些启动命令或类似的东西)。
这可能与 autoCreateViewport
is deprecated, try using mainView
相关。