vue.config.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. const proxy = {
  2. "/api/ecs_core": {
  3. target: process.env.VUE_APP_CORE_HOST_URL,
  4. changeOrigin: true,
  5. },
  6. "/api/ecs_exam_work": {
  7. target: process.env.VUE_APP_EXAM_WORK_HOST_URL,
  8. changeOrigin: true,
  9. },
  10. "/api/ecs_outlet": {
  11. target: process.env.VUE_APP_EXCHANGE_HOST_URL,
  12. changeOrigin: true,
  13. },
  14. "/api/uq_basic": {
  15. target: process.env.VUE_APP_QUESTIONS_HOST_URL,
  16. changeOrigin: true,
  17. },
  18. "/api/ecs_oe_admin": {
  19. target: process.env.VUE_APP_OE_HOST_URL,
  20. changeOrigin: true,
  21. },
  22. "/api/ecs_oe_student": {
  23. target: process.env.VUE_APP_OE_HOST_URL,
  24. changeOrigin: true,
  25. },
  26. "/api/ecs_marking": {
  27. target: process.env.VUE_APP_MARKING_HOST_URL,
  28. changeOrigin: true,
  29. },
  30. "/api/ecs_data_process": {
  31. target: process.env.VUE_APP_DATA_PROCESS_HOST_URL,
  32. changeOrigin: true,
  33. },
  34. "/api/ecs_prt": {
  35. target: process.env.VUE_APP_PRINT_HOST_URL,
  36. changeOrigin: true,
  37. },
  38. "/api/ctr/task": {
  39. target: process.env.VUE_APP_TASK_HOST_URL,
  40. changeOrigin: true,
  41. },
  42. "/api/ecs_reports": {
  43. target: process.env.VUE_APP_REPORTS_HOST_URL,
  44. changeOrigin: true,
  45. },
  46. };
  47. var webpack = require("webpack");
  48. /** @type {import("@vue/cli-service").ProjectOptions} */
  49. module.exports = {
  50. // 这里设置项目的路径,比如 '/admin' 。设置以后 BASE_URL就有值了。
  51. // 注意这解决不了CDN的问题,CDN的问题要另行研究。
  52. // 可能的方案是另设一个替代 BASE_URL 的环境变量解决 <%%= BASE_URL %%>favicon.ico 和 ${process.env.BASE_URL}service-worker.js
  53. publicPath: "/admin",
  54. lintOnSave: process.env.NODE_ENV !== "production" ? true : "error",
  55. devServer: {
  56. proxy,
  57. },
  58. configureWebpack: {
  59. // devtool: "source-map", // for vscode debug
  60. plugins: [
  61. // Ignore all locale files of moment.js
  62. new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
  63. ],
  64. },
  65. transpileDependencies: [
  66. /\bvue-awesome\b/,
  67. /\bvue-echarts\/components\b/,
  68. /\bresize-detector\b/,
  69. ],
  70. };
  71. require("events").EventEmitter.defaultMaxListeners = 0;