我是Sencha Touch的初学者,也是学习它的方式。
我使用Sencha Touch 2.1编写的以下代码不起作用。 我可以在浏览器上看到一个按钮,但是点击按钮时,这不会发出警报。 请告诉我出了什么问题。 抱歉我的英语不好,因为我是日本人。 目录结构:
(root)---app.js
|-app---view--Main_view.ja
|-controller--Main_cont.js
[app.js]
Ext.application({
name: 'MyApp',
views: ['Main_view'],
controllers: ['Main_cont'],
launch: function() {
Ext.Viewport.add(Ext.create('MyApp.view.Main_view'));
}
});
[Main_view.js]
Ext.create('Ext.Container', {
fullscreen: true,
layout: {
type: 'vbox',
pack: 'center'
},
items: [
{
xtype : 'button',
text : 'Button',
id : 'action'
}
]
});
[Main_cont.js]
Ext.define('MyApp.controller.Main_cont',{
extend: 'Ext.app.Controller',
config: {
control: {
'#action':{
tap : function() {
alert('tap');
}
}
}
}
});
答案 0 :(得分:2)
使用按钮,您可以设置“处理程序”属性而不是点击侦听器:
xtype : 'button',
text : 'Button',
id : 'action',
handler : function(){
alert('tap');
}
答案 1 :(得分:0)
试试这个:
'button[id=action]' : {
tap : 'handleTap'
}
其中handleTap
应该是控制器中定义的函数。
如果你在refs
中定义了它的视图,你甚至可以这样做:
'mainview button[id=action]' : {
tap : 'handleTap'
}
这对我有用