Twitter @radikft
var childPanel1 = Ext.create('Ext.panel.Panel', {
title: 'Child Panel 1',
html: 'A Panel'
});
var childPanel2 = Ext.create('Ext.panel.Panel', {
title: 'Child Panel 2',
html: 'Another Panel'
});
Ext.create('Ext.container.Viewport', {
items: [ childPanel1, childPanel2 ]
});
Ext.create('Ext.tab.Panel', {
renderTo: Ext.getBody(),
height: 100,
width: 200,
items: [
{
xtype: 'panel',
title: 'Tab One',
html: 'The first tab',
listeners: {
render: function() {}
}
}
]
});
Ext.define('My.custom.Component', {
extend: 'Ext.Component'
});
Ext.define('My.custom.Component', {
extend: 'Ext.Component',
onRender: function() {
this.callParent(arguments); // call the superclass onRender method
}
});
function badTotalFn(menuItem) {
var r = store.getRange(),
total = 0;
Ext.Array.each(r, function(rec) {
total += rec.get(menuItem.up('dataIndex').dataIndex);
});
}
function goodTotalFn(menuItem) {
var r = store.getRange(),
field = menuItem.up('dataIndex').dataIndex;
total = 0;
for (var j = 0, l = r.length; j < l; j++) {
total += r[j].get(field);
}
}
Browser | Bad | Good |
---|---|---|
Chrome | 1700ms | 10ms |
IE9 | 18000ms | 500ms |
IE6 | Gave up | 532ms |
{
xtype: "tabpanel",
items: [{
title: "Results",
items: {
xtype: "grid"
...
}
}]
}
{
xtype: "tabpanel",
items: [{
title: "Results",
xtype: "grid",
...
}]
}
Ext.create('Ext.panel.Panel', {
width: 400, height: 200,
icon: '../shared/icons/fam/book.png',
title: 'Test',
tools: [{
type: 'gear'
}, {
type: 'pin'
}],
renderTo: document.body
});