有没有一种方法可以以这种方式配置Ext.Loader
,以便它可以为每个命名空间处理一个文件?
每个文件有一个类通常是可以的,但有时需要有太多文件。有什么想法吗?
最佳答案
如果您有所有类的列表,那么您只需将适当的映射添加到 Ext.Loader
即可,如下所示:
Ext.Loader.addBaseUrlClassPathMappings({
"Namespace.Class": "path/fileName.js"
});
如果您没有此类列表,那么事情就没那么简单了。您可以覆盖 Ext.configuration.ux.Inventory.getPath 并在那里进行一些映射。示例代码:
Ext.define('Ext.configuration.ux.Inventory', {
override: 'Ext.Inventory',
getPath: (function () {
var parent = Ext.Inventory.prototype.getPath;
return function (className) {
var result = parent.apply(this, [className]);
// do mapping here
console.log(className + ' -> ' + result);
return result;
};
}())
});
关于javascript - 将 Ext.Loader 配置为每个命名空间有一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24737070/