constant.ts 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. export const APP_NAME = process.env.VUE_APP_RELEASE_PROJECT_NAME;
  2. export const APP_ENV = process.env.VUE_APP_RELEASE_PROJECT_ENV;
  3. export const PUBLIC_PATH = process.env.PUBLIC_PATH;
  4. export const NODE_ENV = process.env.NODE_ENV;
  5. export const outputDir = 'dist'; // 输出目录名称
  6. export const eslintEnable = false; // 是否开启eslint(开发环境会读取它),会影响热更新速度,这里只是关闭了webpack的eslint插件,但可以依靠编辑器的eslint提示。
  7. export const webpackBarEnable = false; // 是否开启WebpackBar(开发环境会读取它),只要是插件就会影响构建速度,开发环境关掉它吧
  8. export const analyzerEnable = false; // 是否开启Webpack包分析
  9. export const gzipEnable = false; // 是否开启http压缩
  10. export const windicssEnable = false; // 是否开启windicss
  11. export const htmlWebpackPluginTitle = 'billd-live'; // htmlWebpackPlugin的标题
  12. export const outputStaticUrl = (isProduction: boolean) => {
  13. // console.table({ isProduction, APP_NAME, APP_ENV, NODE_ENV, PUBLIC_PATH });
  14. if (APP_ENV === undefined && APP_NAME === undefined) {
  15. return '/';
  16. }
  17. if (isProduction) {
  18. // 如果是jenkins里面构建,会执行build.sh,一定会有APP_NAME,APP_ENV可能是:'null'|'beta'|'preview'|'prod'
  19. if (APP_ENV === 'null') {
  20. return `/${APP_NAME!}/`;
  21. } else {
  22. return `/${APP_NAME!}/${APP_ENV!}/`;
  23. }
  24. } else {
  25. if (APP_NAME === undefined) {
  26. // 如果没设置项目名称,则判断是否设置了项目环境,如果设置了,则返回/项目环境/,否则返回'/'
  27. return APP_ENV ? `/${APP_ENV}/` : '/';
  28. }
  29. if (APP_ENV === undefined) {
  30. // 如果没设置项目环境,则判断是否设置了项目名称,如果设置了,则返回/项目名称/,否则返回'/'
  31. return APP_NAME ? `/${APP_NAME}/` : '/';
  32. }
  33. // 返回:/项目名称/项目环境/
  34. return `/${APP_NAME}/${APP_ENV}/`;
  35. }
  36. };