как вызвать представление из контроллера в extjs MVC 4 - PullRequest
0 голосов
/ 03 февраля 2012

У меня есть RowEdit на мой взгляд. Я хотел бы иметь возможность вызвать контроллер, чтобы я мог сохранить модель.

My View

var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
    clicksToMoveEditor: 1,
    autoCancel: false,
    listeners: {
        afteredit: function () {
          // i want to call the controller from here
        }
    }
});

Ext.define('Pandora.view.MaterialsList', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.materialslist',
    store: 'Materials',
    title: 'Materials',
    plugins: [rowEditing]
}

Я понимаю, что, возможно, я поступаю об этом неправильно и должен пытаться перехватить это событие в моем контроллере, но мне не удалось перехватить событие в моем контроллере.

1 Ответ

3 голосов
/ 03 февраля 2012

Согласно документам, желаемое событие - edit, а не afteredit.Попробуйте послушать это на своем контроллере.

Если вы все еще хотите иметь возможность делать то, что вы просили:

На одном из ваших контроллеров в коде инициализации вам понадобитсяназначить приложение глобальной переменной.APP = this.application

Тогда в любом месте вашего приложения вы можете сказать APP.getController('myController').myMethod()

...