ViewController中的重写方法

时间:2014-06-15 16:43:12

标签: extjs

我是尝试利用MVVM架构最佳实践的ExtJS 5新手。至于我对模式的理解,应该避免在视图中直接放置任何逻辑以支持控制器,所以试图实现我做了类似的事情:

Ext.define(
    'MyNamespace.MyComponent',
    {
        extend: 'Ext.Component',

        requires: [
            "MyNamespace.MyController"
        ],

        controller: 'mycontroller',

        alias: "widget.mycomponent",

        onBoxReady: "myOnBoxReady"
    }
)

而我的控制器看起来像这样:

Ext.define(
    'MyNamespace.MyController',
    {
        extend: 'Ext.app.ViewController',

        alias: 'controller.mycontroller',

        myOnBoxReady: function(owner, width, height, eOpts){
            //some logic
        }
    }
)

我实际上设法实现的是收到错误string is not a function。所以问题是 - 我做错了什么,正确的方法是什么?

1 个答案:

答案 0 :(得分:1)

像这样配置您的组件:

listeners:{
    boxready:'myOnBoxReady'
}

否则没关系。