点击按钮时,它不起作用

时间:2013-02-02 09:12:16

标签: sencha-touch-2

我是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');
                }
            }
         }
    }
});

2 个答案:

答案 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'
}

这对我有用