UNPKG

@icanvas/webpack

Version:

这是icanvas的默认webpack打包配置

29 lines (28 loc) 892 B
const fs = require('fs-extra'); const path = require('path'); const P2J = DirPath => { let Res = {}; fs.readdirSync(DirPath).forEach(FileName => { if (FileName.indexOf('.') == 0) return; let FilePath = path.join(DirPath, FileName); let Stats = fs.statSync(FilePath); if (Stats.isDirectory()) { if (!Res[FileName]) Res[FileName] = {}; if (typeof Res[FileName] == 'string') Res[FileName] = { _: Res[FileName] }; Object.assign(Res[FileName], P2J(FilePath)); } if (Stats.isFile()) { let Ext = path.extname(FilePath); let Name = path.basename(FilePath, Ext); if (Ext && Name) { if (!Res[Name]) Res[Name] = Ext.substring(1); if (typeof Res[Name] == 'object') Res[Name]._ = Ext.substring(1); } } }); return Res; }; module.exports = dirpath => { if (process.env.npm_config_debug) console.log('读取文件夹结构', dirpath); return P2J(dirpath); };