这是我在配置对象中查看的片段:
xtype: 'fieldset',
cls: 'loginFormText',
items:[
{
xtype: 'timepickerfield',
label: 'Start',
value: this.fromTime(),
name: 'fromTime'
},{
xtype: 'timepickerfield',
label: 'End',
value: this.toTime(),
name: 'toTime'
}
]
在视图的底部,我有以下功能:
fromTime: function(){
var fromDate = new Date();
fromDate.setHours(12);
},
toTime: function(){
var toDate = new Date();
toDate.setHours(18);
}
但是我尝试用“this.fromTime()”和“this.toTime()”调用它们的方式不起作用,我该如何调用它们?
答案 0 :(得分:0)
你不能这样做。在创建时,此引用全局Window对象,而不是Sencha类。要解决此问题,您必须在initialize()函数中执行此操作。例如。这应该工作......
Ext.define (MyApp.view.CoolView, {
xtype: 'coolview',
config: {
layout: 'fit'
},
initialize: function () {
var items = {
xtype: 'fieldset',
cls: 'loginFormText',
items:[
{
xtype: 'timepickerfield',
label: 'Start',
value: this.fromTime(),
name: 'fromTime'
},{
xtype: 'timepickerfield',
label: 'End',
value: this.toTime(),
name: 'toTime'
}
]
}
this.setItems(items);
},
fromTime: function(){
var fromDate = new Date();
fromDate.setHours(12);
return fromDate;
},
toTime: function(){
var toDate = new Date();
toDate.setHours(18);
return toDate;
}
})
干杯,奥列格