UNPKG

wendyhao-scan-routers

Version:

koa2 autorouter wendyhao scan-router router url

30 lines (28 loc) 733 B
'use strict'; const fs=require('fs'); const path=require('path'); function scanrouter(routerName,extname){ extname=extname||'.js'; extname=/^\.\w{2,6}/.test(extname)?extname:'.'+extname; routerName=routerName||'./'; routerName=/^\.\//.test(routerName)?routerName:'./'+routerName; return scandone(routerName,extname); }; function scandone(dir,endName,result){ let directory=(dir==='./'?dir:dir+'/'); result=result||[]; let arrs=fs.readdirSync(dir); for(let arr of arrs){ let ext=path.extname(arr); if(ext){ if(ext===endName){ result.push(directory+arr); } } else{ result=scandone(directory+arr,endName,result); } } return result; }; module.exports=scanrouter;