0

我认为我有 RowEdit。我希望能够调用控制器,以便保存模型。

我的观点

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]
}

我很感激我可能会以错误的方式进行此操作,并且应该尝试在我的控制器中捕获此事件,但我无法在我的控制器中捕获该事件。

4

1 回答 1

3

根据文档,您想要的事件edit不是afteredit. 尝试在您的控制器中收听。

如果您仍然希望能够执行您所要求的操作:

在您的一个控制器中,在初始化代码中,您需要将应用程序分配给一个全局变量。APP = this.application

然后,在你的应用程序的任何地方,你都可以说APP.getController('myController').myMethod()

于 2012-02-03T14:46:41.120 回答