我正在开发我的第一个 Sencha Touch 2 项目,所以我对它还不是很熟悉。我正在使用 Sencha 文档并且一直在谷歌搜索和 Stackoverflowing 很多,但似乎无法找到这个问题的答案。
我在 MVC 中工作,想在我的视图中添加一些事件监听器(在控制器中)到控件中。无论我尝试什么,它们似乎都不起作用,尽管当我将它们添加到视图本身时它们会起作用。当然,这根本不是最佳实践,所以我想知道我做错了什么?
这是我的控制器的外观:
Ext.define("workingTime.controller.MainController", {
extend: "Ext.app.Controller",
views: ['Main'],
refs: [
{
sl_break: '#sl_break'
},
{
sl_work: '#sl_work'
}
],
init: function() {
this.control({
'sl_break': {
change: 'setBreakTime'
}
});
},
setBreakTime: function(newValue) {
console.log('set');
}
});
这就是我的视图的外观(仍然添加了侦听器):
Ext.define("workingTime.view.Main", {
extend: 'Ext.form.Panel',
controllers: ['MainController'],
requires: [
'Ext.field.Slider'
],
config: {
fullscreen: true,
items: [
{
xtype: 'label',
html: '<p class="label_field">Take a <span>five</span> minute break<p>'
},
{
xtype: 'sliderfield',
name: 'sl_break',
value: 5,
minValue: 1,
maxValue: 30,
style: {
'background-color' : '#FFecc0'
},
listeners: {
change: function() {
alert('changed');
}
}
},
{
]
}
});
如果您需要更多信息,请告诉我。