我正在使用 Ext JS v7.1,并且我已经重写Ext.Base
了为从 Ext.Base 继承的类设置命名方案:这简化了我的调试。
Ext.define('App.class.Base', {
override: 'Ext.Base',
constructor: function() {
var me = this
/**
* App.base.store.Base => store-base-
* App.store.Menu => store-menu-
*/
if (me.isIdentifiable) {
if (!me.self.prototype.hasOwnProperty('identifiablePrefix')) {
const classNameParts = me.$className.match(/([^\.]+)/g)
if (classNameParts && classNameParts[0] === 'App') {
classNameParts.splice(0, classNameParts.length - 2)
me.self.prototype.identifiablePrefix = classNameParts.reduce((i, j) => i + '-' + j).toLocaleLowerCase() + '-'
}
}
}
return me.callParent()
}
})
这段代码之前构建没有错误,但是在我将 Sencha Cmd 升级到 v7.3.0.19 之后,我开始得到以下错误:
[ERR] C2016: Override target not found -- /...../packages/local/module-core/overrides/class/Base.js:2:64
[WRN] Override App.class.Base in file /..../packages/local/module-core/overrides/class/Base.js had no target detected
我不知道这是否是执行此覆盖的正确位置/方式,如果不是,我可以更改我的实现。但是,如果没有其他办法,如何摆脱构建错误?
提前致谢,
伊佩克