0

私はそのように設計されたビューを持っています:

Ext.define('MY.view.NotificationMails', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.NotificationMailsPanel',
    id: 'id-notification-mails-panel',

そして、私はこのビューのコントローラーを持っています:

Ext.define('MY.controller.NotificationMailsController', {
    extend: 'Ext.app.Controller',
    models: [
    'NotificationMailsRecord'
    ],

    stores: [
    'NotificationMailsStore'
    ],

    views: [
    'NotificationMails'
    ],
//  refs:[{
//      ref: 'notificationMails',
//      selector: 'mailGrid'    
//  }],

    init: function()    {
        this.control({
            '#id-notification-mails-panel': {

                itemclick: this.clickedSomething
            }

        })

    },

そして、いくつかのテストを行い、最終的に問題を見つけるための単純な関数定義itemclick:

clickedSomething: function() {
    console.log('Deteceted click');
}

しかし、何も起こりません。多くのバリエーションを試しましたが、ビューからアクションを取得してコントローラーで関数を実行することはできません。奇妙なことに、私はいくつかのコントローラーを持っており、ほとんどのコントローラーですべてが期待どおりに機能しますが、これと他のいくつかのコントローラーは-わかりません-何か間違ったことをしている可能性があります。理由は別の場所にある可能性があります。

ありがとう

レロン

4

1 に答える 1

1

これは奇妙です。次のことを試してみます: init() 内の console.log で、コントローラーが初期化されているかどうかを確認します (コントローラーのアプリ リストに含めるのを忘れている可能性があります)。

于 2012-06-08T08:40:33.600 に答える