如何从extjs mvc 4中的控制器调用视图

时间:2012-02-03 13:03:22

标签: extjs extjs4 extjs-mvc

我认为我有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]
}

我很感激我可能会以错误的方式解决这个问题,并且应该尝试在我的控制器中捕获此事件,但我无法在控制器中捕获该事件。

1 个答案:

答案 0 :(得分:3)

根据文档,您想要的事件是edit而不是afteredit。试着在控制器中听一下。

如果你仍然希望能够做你所问的事情:

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

然后,在您的应用中的任何位置,您都可以说APP.getController('myController').myMethod()