我认为我有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]
}
我很感激我可能会以错误的方式解决这个问题,并且应该尝试在我的控制器中捕获此事件,但我无法在控制器中捕获该事件。
答案 0 :(得分:3)
根据文档,您想要的事件是edit
而不是afteredit
。试着在控制器中听一下。
如果你仍然希望能够做你所问的事情:
在其中一个控制器中,在init代码中,您需要将应用程序分配给全局变量。 APP = this.application
然后,在您的应用中的任何位置,您都可以说APP.getController('myController').myMethod()