const glob = require('glob') const kebabCaseToCamelCase = (string = '') => { return string.replace(/-(.){1}/g, (val) => { return val.replace('-', '').toUpperCase() }) } glob('./**/index.?(jsx|js|vue)', {}, (err, files) => { if (!err) { let result = '' files.forEach(file => { const pathArr = file.split('/') pathArr.pop() const dirPath = pathArr.join('/') pathArr.shift() // pathArr.shift() const name = kebabCaseToCamelCase(pathArr.pop())// pathArr.join('-') // kebabCaseToCamelCase(pathArr.join('')) result[name] = dirPath result += ` ${name}: { component: (mode) => () => import(\`${dirPath}\${mode}\`) },\n` }) console.log(result) } })