jsEntry.js 892 B

1234567891011121314151617181920212223242526272829303132333435
  1. let entrys = {}
  2. const path = require('path')
  3. const fs = require('fs')
  4. const adminPath = 'admins'
  5. const files = fs.readdirSync(resolve(adminPath))
  6. function resolve (dir) {
  7. return path.resolve(__dirname, '../', dir)
  8. }
  9. const filterJs = ['common', 'navtab']
  10. function getEntry (path) {
  11. let jss = fs.readdirSync(resolve(path))
  12. jss.forEach(item => {
  13. let stats = fs.statSync(resolve(`${path}/${item}`))
  14. if (stats.isFile()) {
  15. const filename = item.match(/(\S+).js/)[1]
  16. const name = `${path}/${filename}`
  17. if (filterJs.indexOf(filename) === -1) {
  18. entrys[name] = resolve(`${name}`)
  19. }
  20. } else {
  21. getEntry(`${path}/${item}`)
  22. }
  23. })
  24. }
  25. getEntry('js')
  26. let ouputEntrys = {}
  27. Object.keys(entrys).forEach(item => {
  28. files.forEach(app => {
  29. ouputEntrys[`${app}/${item}`] = entrys[item]
  30. })
  31. })
  32. // console.log(ouputEntrys)
  33. module.exports = ouputEntrys