我正在開發我第一個Sencha Touch 2項目,所以我對它還不是很熟悉。我正在使用Sencha文檔,並一直谷歌和Stackoverflowing很多,但似乎無法找到這個問題的答案。eventlisters不能在控制器中工作
我正在MVC工作,並希望添加一些eventlisteners(在控制器)來控制我的看法。無論我嘗試什麼,它們似乎都不起作用,儘管它們在視圖中添加它們時起作用。當然,這不是最好的實踐,所以我想知道我在做什麼錯了?
這是我的控制器的外觀:
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');
}
}
},
{
]
}
});
告訴我,如果你需要更多的信息。
refs應該包裝在配置對象中。 –