1

我在 Architect 中有以下结构。

包含视图的控​​制器(例如 MyPanelView)

在 MyPanelView 中,您可以有一个按钮,并给它一个 itemId。然后您可以将其绑定到单击事件。您可以在没有控制器的情况下使用单击事件(内联),也可以将事件移动到控制器。这很好用。

但是这些事件呢?afterrender, beforerender 等等..?如果将其移至控制器,则不会在那里触发事件。

由于这不起作用,我如何才能在面板的 afterrender 功能中访问控制器方法?

onAfterrenderMyPanelView : function(component, eOpts) {
   this.getRefToOtherPanel() //not working
}

提前致谢!我迷路了..

克里斯。

4

1 回答 1

1

您可以像这样在控制器中设置侦听器和事件处理程序(来自 Sencha 文档的示例):

 Ext.define('MyApp.controller.Users', {
     extend: 'Ext.app.Controller',

     init: function() {
         this.control({
             'viewport > panel': { //<-- ComponentQuery
                 render: this.onPanelRendered //<-- event handler
             }
         });
     },

     onPanelRendered: function() {
         console.log('The panel was rendered');
     }
 });
于 2013-08-01T17:29:41.950 回答