UNPKG

anchundan

Version:
31 lines (29 loc) 990 B
const path = require('path'); const fs = require('fs'); const ARouter = require('./ARouter'); const publiccom = require('anchundan/src/core/publiccom'); const FrameworkType = require('anchundan/src/core/baseStruct/FrameworkType'); module.exports = (application)=>{ let router = new ARouter(application); let extensionRouter = publiccom.getTarget('types')[FrameworkType.ROUTER]; if(!extensionRouter) { extensionRouter = [path.join(process.getRoot(),'routers')]; } else{ extensionRouter = extensionRouter.concat(path.join(process.getRoot(),'routers')) } extensionRouter.forEach( routerPath => { let r = path.join(routerPath,'index.js'); if(fs.existsSync(r)){ try{ const routerDecorator = require(r); routerDecorator.call(null,router,application); } catch(e){ throw e; } } }) return router.router; };