回答

0

下面的例子爲我工作。也就是說,我現在可以在我的控制器中處理插件事件。由於我正在開發一個定製插件,並且您正在使用打包插件,所以您的方法會有所不同。我想你應該擴展你想使用的插件,添加我的例子中的「mixins」和「relayEvents」概念。您也可以爲您正在使用的插件創建覆蓋。

Ext.define("Ext.ux.MyController", { 
    extend: "Ext.app.Controller", 
    init: function() { 
     this.control({ 
      "mycomponentxtype": { 
       "load": function(){ ... }, 
       "unload": function(){ ... } 
      } 
     }) 
    } 
}); 


Ext.define("Ext.ux.MyPlugin", { 
    extend: "Ext.AbstractPlugin", 
    alias: "plugin.myplugin", 

    mixins: [ 
     "Ext.util.Observable" 
    ], 

    config: { 
     ... 
    }, 

    init: function(myComponent) { 
     var me = this; 

     // contruction of the mixin is required. 
     me.mixins["Ext.util.Observable"].constructor.call(me); 

     myComponent.relayEvents(me, [ "load", "unload" ]); 

     . 
     . 
     . 
    } 
}); 

即使原來的問題是從2013年初我來到這個崗位在2014年中期在尋找一個適當的答案,並沒有發現它。這基本上是我解決我的問題的方法。我希望它有幫助!

相關問題