vite.config.ts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. import vue from "@vitejs/plugin-vue";
  2. import { createServer as createLangServer } from "./scripts/lang";
  3. import { resolve } from "path";
  4. const langProt = 7072;
  5. const ip = `http://192.168.9.171:9000`;
  6. const proxy = {
  7. "/dev": {
  8. target: `http://localhost:${langProt}`,
  9. changeOrigin: true,
  10. rewrite: (path) => path.replace(/^\/dev/, "/dev"),
  11. },
  12. "/offlineData": {
  13. target: "http://192.168.0.43:9000/",
  14. changeOrigin: true,
  15. rewrite: (path) => path.replace(/^\/offlineData/, ""),
  16. },
  17. "/fusion/ws": {
  18. target: "wss://test-mix3d.4dkankan.com/",
  19. ws: true,
  20. rewriteWsOrigin: true,
  21. },
  22. "/local": {
  23. target: "http://192.168.0.38:8808",
  24. changeOrigin: true,
  25. rewrite: (path) => path.replace(/^\/local/, ""),
  26. },
  27. "/offlineResource": {
  28. target: ip,
  29. changeOrigin: true,
  30. rewrite: (path) => path.replace(/^\/offlineResource/, ""),
  31. },
  32. "/fusion": {
  33. target: ip,
  34. changeOrigin: true,
  35. rewrite: (path) => path.replace(/^\/api/, ""),
  36. },
  37. "/swkk": {
  38. target: `${ip}/`,
  39. changeOrigin: true,
  40. rewrite: (path) => path.replace(/^\/swkk/, ""),
  41. },
  42. "/oss": {
  43. target: `${ip}/`,
  44. changeOrigin: true,
  45. rewrite: (path) => path.replace(/^\/oss/, "/oss"),
  46. },
  47. "/laser": {
  48. target: `${ip}/`,
  49. changeOrigin: true,
  50. rewrite: (path) => path.replace(/^\/laser/, "/laser"),
  51. },
  52. "/laser-data": {
  53. target: `${ip}/`,
  54. changeOrigin: true,
  55. rewrite: (path) => path.replace(/^\/laser-data/, "/laser-data"),
  56. },
  57. "/fdkk": {
  58. target: `${ip}/`,
  59. changeOrigin: true,
  60. rewrite: (path) => path.replace(/^\/fdkk/, "/fdkk"),
  61. },
  62. "/service": {
  63. target: ip,
  64. changeOrigin: true,
  65. rewrite: (path) => path.replace(/^\/service/, "/service"),
  66. },
  67. "/swss": {
  68. target: `${ip}/mega`,
  69. changeOrigin: true,
  70. rewrite: (path) => path.replace(/^\/swss/, ""),
  71. },
  72. };
  73. let app = "index";
  74. if (process.argv.length > 3) {
  75. app = process.argv[process.argv.length - 1].trim();
  76. }
  77. // https://vitejs.dev/config/
  78. export default async ({ mode }) => {
  79. const input: { [key in string]: string } = {}
  80. if (process.argv.includes('lang')) {
  81. await createLangServer(langProt)
  82. input.lang = resolve(__dirname, 'lang.html')
  83. } else {
  84. input[app] = resolve(__dirname, `${app}.html`)
  85. }
  86. console.log(input)
  87. return {
  88. build: {
  89. rollupOptions: {
  90. input,
  91. },
  92. },
  93. plugins: [
  94. vue(),
  95. // mkcert()
  96. ],
  97. css: {
  98. preprocessorOptions: {
  99. less: {
  100. javascriptEnabled: true,
  101. },
  102. },
  103. },
  104. base: "./",
  105. assetsInclude: ["public/**/*"],
  106. resolve: {
  107. extensions: [".js", ".ts", ".json", ".vue"],
  108. alias: [
  109. {
  110. find: "@",
  111. replacement: resolve(__dirname, "./src"),
  112. },
  113. {
  114. find: "bill",
  115. replacement: resolve(__dirname, "./src/components/bill-ui"),
  116. },
  117. ],
  118. },
  119. server: {
  120. host: "0.0.0.0",
  121. port: 7173,
  122. // open: true,
  123. proxy: proxy,
  124. // https: true,
  125. },
  126. preview: {
  127. proxy,
  128. },
  129. };
  130. };