nimble-ui-pc
Version:
基础vue ui库 配置化组件 后台管理系统组件
33 lines (31 loc) • 1.2 kB
JavaScript
const path = require('path');
const getModeulKey = require('./getModeulKey');
const genIndex = require('nimble-lib/transform/genIndex');
const operate = require('nimble-lib/transform/operate');
// eslint-disable-next-line require-jsdoc
function resolve (...dir) {
return path.join.apply(this, [__dirname, '..'].concat(dir));
}
/**
* 获取模块Entry
* @param {*} isToLowerCase key是否为小写
* @param {*} isSync 是否只取同步模块
* @param {*} defPrefix 需要加的前缀
* @param {*} fileName 需要生成index时候的文件名
* @param {*} expModules 生成index文件时增加的导入模块
* @returns {Object}
*/
// eslint-disable-next-line max-params
module.exports = function (isToLowerCase = true, isSync, defPrefix, fileName, expModules) {
let ress = operate(resolve('src/**/*'), '', isSync, defPrefix, (_path, replacePre, dir) => {
let key = getModeulKey(_path, replacePre, dir);
if (isToLowerCase) {
key = key.toLowerCase();
}
return key;
}, (res, replacePre) => {
let indexMod = genIndex(res, replacePre, fileName, expModules);
return Object.assign({}, res, indexMod);
});
return ress;
};