env-config.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. var lodashExtend = require('lodash/extend');
  2. var config = require('../config');
  3. var path = require('path');
  4. var fs = require('fs');
  5. var moment = require('moment');
  6. var resultConfig;
  7. module.exports = {
  8. getCustomConfig: getCustomConfig
  9. };
  10. function getCustomConfig() {
  11. if(resultConfig) {
  12. return resultConfig;
  13. }
  14. console.log('============= 当前的打包环境变量 =============')
  15. console.log(config.packageConfig)
  16. console.log('==============================================')
  17. var packageKey = config.packageConfig.packageKey;
  18. var packageType = config.packageConfig.packageType;
  19. var configPath = path.resolve(__dirname, './custom/' + packageKey + '.js');
  20. if(fs.existsSync(configPath)) {
  21. var defaultConfig = require('./custom/wswin')
  22. resultConfig = defaultConfig;
  23. resultConfig.apiHost = '';
  24. if(packageType === 'dev' || packageType === 'stable' || packageType === 'release') {
  25. if(packageType === 'dev') {
  26. // 开发环境的代理匹配关键字 2个端口用域名
  27. resultConfig.apiHost = '/115.29.3.73';
  28. console.error('++++++++++++++++++++++++++++555555555555555555555555555555555');
  29. }else if(packageType === 'stable'){
  30. if (packageKey == 'wswin') {
  31. resultConfig.apiHost = resultConfig.stableApi
  32. } else {
  33. var stableConfig = require('./custom/'+ packageKey + '-stable')
  34. resultConfig = stableConfig
  35. resultConfig.apiHost = stableConfig.stableApi
  36. }
  37. }else if(packageType === 'release'){
  38. var settingConfig = require('./custom/'+ packageKey)
  39. resultConfig.apiHost = settingConfig.releaseApi
  40. resultConfig.appVersion = settingConfig.appVersion
  41. resultConfig.companyName = settingConfig.companyName
  42. resultConfig.companyEnName = settingConfig.companyEnName
  43. // resultConfig.imgPath = settingConfig.imgPath
  44. }
  45. }
  46. resultConfig.assetsPublicPath = '/'
  47. if(packageType === 'release' || packageType === 'stable' ) {
  48. resultConfig.assetsPublicPath = config.build.assetsPublicPath
  49. }
  50. resultConfig.enableDebugLog = packageType != 'release'
  51. resultConfig.appVersion += '.' + moment().format('YYYYMMDD')
  52. config.packageConfig.appVersion = resultConfig.appVersion
  53. console.log('')
  54. console.log('============= 当前的打包配置变量 =============')
  55. console.log(resultConfig)
  56. console.log('==============================================')
  57. return resultConfig;
  58. } else {
  59. throw new Error(packageKey + '.js file not exists!!!!!');
  60. }
  61. }