我正在尝试扩展Ext.Toolbar.TextItem来创建一个简单的时钟。 这样做的目的是能够在我的应用程序中向状态栏添加时钟。 我的扩展课程如下:
Ext.define('Urlopy.Components.TimeDisplay', {
extend : 'Ext.Toolbar.TextItem',
initComponent : function() {
var me = this;
var dt = new Date();
Ext.defer(this.onUpdate, 240, this);
Ext.apply(me, {
text : Ext.Date.format(dt, "Y-m-d H:i:s")
});
delete dt;
this.callParent(arguments);
},
onUpdate : function(obj) {
var dt = new Date();
this.setText(Ext.Date.format(dt, "Y-m-d H:i:s"));
delete dt;
Ext.defer(this.onUpdate, 240, this);
}
});
我不确定我是否这样做,它可以正常工作,直到我尝试折叠面板。我的布局基于Ext.container.Viewport。
这是我收到的错误:http://vimeo.com/43978383
我不知道出了什么问题:(
欢迎任何帮助!
更新
这是我更新的组件:
Ext.define('Urlopy.Components.TimeDisplay', {
extend : 'Ext.Toolbar.TextItem',
initComponent : function() {
this.callParent(arguments);
//this.setText(Ext.Date.format(new Date(), "Y-m-d H:i:s"));
Ext.defer(this.onUpdate, 240, this);
},
onUpdate : function(obj) {
//this.setText(Ext.Date.format(new Date(), "Y-m-d H:i:s"));
Ext.defer(this.onUpdate, 240, this);
}
});
这现在有效,但是当我取消注释负责更新文本的2行所有崩溃时:/
我收到此错误
el未定义
var id = el.id,
答案 0 :(得分:0)
请你试试看,告诉我们它是否还会崩溃?
Ext.define('Urlopy.Components.TimeDisplay', {
extend : 'Ext.Toolbar.TextItem',
initComponent : function() {
this.callParent(arguments);
Ext.defer(this.onUpdate, 240, this);
},
onUpdate : function(obj) {
console.log('tock');
Ext.defer(this.onUpdate, 240, this);
}
});