ExtJS无法覆盖方法静态

时间:2018-03-21 08:50:14

标签: extjs extjs6

由于添加了我自己的方法,我想扩展Ext.Action课程,但我鼓励问题Cannot override method statics on Core.app.Action instance

我知道这是一个与重写构造函数相关的问题。但是不知道如何以其他方式解决它。

这是我的组件的代码

Ext.define('Core.app.Action', {
    extend: 'Ext.Action',
    iconCls: 'icon-add',
    currentData: undefined,

    constructor: function(config){
        config = Ext.applyIf(config || {}, this);
        this.callParent([config])
    },

    handler: function (widget, event) {
        Ext.Msg.alert("Name:", this.currentData.data.company)
    },

    getActionId: function () {
        return this.actionId
    },

    setCurrentData: function (data) {
        this.currentData = data
        this.disable()
        if (data.data.actions) {
            this.currentData.data.actions.forEach(action => {
                if (action === this.actionId) this.enable()
            })
        }
    }

})

我有一种方法可以创建上述类的实例

Ext.create('Core.app.Action', {
    actionId: 'D',
    text: "Action D",
})

当我从类中删除构造函数时,ExtJS不会抛出错误,但我也不能使用诸如handler或setCurrentData之类的方法。

我也试过覆盖该组件,但失败了。

以下解决方案中的答案在这种情况下没有帮助。 Reusable Action in Ext JS MVC

0 个答案:

没有答案