编译不同环境 global 参数设置

获取 ‘npm run build dev’ 中的参数,修改 global

# 在 build.js 中添加如下修改

const yargs = require('yargs')
const fs = require('fs')
let envList = ['prod', 'test', 'dev', 'local', 'stage'];
let globConfig = (yargs.argv.config && envList.includes(yargs.argv.config)) ? yargs.argv.config : (yargs.argv._[0]? yargs.argv._[0]: envList[2]);
let versionConfig = yargs.argv.vers ? yargs.argv.vers : '1.0.0.0';
console.log('building for', globConfig,)
console.log(yargs.argv, yargs.argv._[0])

let glogFile = fs.readFileSync(path.resolve(__dirname, '../src/assets/js/global.js'), 'utf-8')
let curFile = glogFile.replace(/(let\s*env\s*\=\s*)(\d+)(\s*\;)/gi, (s0, s1, s2, s3) => {
  let config = 4
  // (globConfig === 'test') ? 2 : ((globConfig === 'prod') ? 1 : ((globConfig === 'dev') ? 3: globConfig === 'stage' ? 5 : 4))
  switch(globConfig) {
    case 'test':
      config = 2
      break;
    case 'prod':
      config = 1
      break;
    case 'dev':
      config = 3
      break;
    case 'stage':
      config = 5
      break;
    default:
      config = 4
  }
  return s1 + config + s3;
}).replace(/(let\s*version\s*\=\s*\")(.*)(\"\;)/gi, (s0, s1, s2, s3) => {
  return s1 + versionConfig + s3;
})

fs.writeFileSync(path.resolve(__dirname, '../src/assets/js/global.js'), curFile, 'utf-8');