From 401524fb5661d57ffb2229d683fe4de85b65fd1c Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期四, 31 八月 2023 17:54:24 +0800
Subject: [PATCH] 生产管理看板+删不需要的文件

---
 vue.config.js |  151 ++++++++++++++++++++++++++++++++++---------------
 1 files changed, 104 insertions(+), 47 deletions(-)

diff --git a/vue.config.js b/vue.config.js
index db0f78b..25c5a19 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -1,73 +1,130 @@
-'use strict'
-const glob = require('glob')
-const pages = {}
+"use strict";
+const glob = require("glob");
+const pages = {};
+const IS_VENDOR = /[\\/]node_modules[\\/]/;
+const pageVendor = {};
 
-glob.sync('./src/pages/**/main.ts').forEach(path => {
-  const chunk = path.split('./src/pages/')[1].split('/main.ts')[0]
+const pkg = require("./package.json");
+const timestamp = new Date().getTime();
+const queryStr = `?v=${pkg.version}&t=${timestamp}`;
+
+glob.sync("./src/pages/**/main.ts").forEach((path) => {
+  const chunk = path.split("./src/pages/")[1].split("/main.ts")[0];
+  const chunk_vendor = `${chunk}-vendors`;
+  const chunk_common = `${chunk}-common`;
   pages[chunk] = {
     entry: path,
-    template: 'public/index.html',
-    title: chunk=='desktop/index'?'SmartAI':chunk,
-    chunks: ['chunk-vendors', 'chunk-common', chunk]
+    template: "public/index.html",
+    title: chunk == "desktop/index" ? "SmartAI" : chunk,
+    chunks: [chunk_vendor, "chunk-common", chunk],
+  };
+  if (chunk != "index") {
+    pages[chunk].filename = "view/" + chunk + ".html";
   }
-  if (chunk != 'index') {
-    pages[chunk].filename = 'view/' + chunk + '.html'
-  }
-})
+
+  pageVendor[chunk_vendor] = {
+    name: chunk_vendor,
+    priority: -11,
+    chunks: (c) => c.name === chunk,
+    test: /\.js$/,
+    enforce: true,
+  };
+
+  // pageVendor[chunk_common] = {
+  //   name: chunk_common,
+  //   priority: -20,
+  //   chunks: 'initial',
+  //   minChunks: 2,
+  //   reuseExistingChunk: true,
+  //   enforce: true
+  // }
+});
+
+// const serverUrl = "http://58.118.225.79:41243" // 缇婁簲
+//const serverUrl = "http://192.168.20.117:7009"
+// const serverUrl = "http://192.168.20.10:7009";
+const serverUrl = "http://192.168.20.116:7009";
 module.exports = {
   pages,
-  chainWebpack: config => {
-    config.plugins.delete('named-chunks')
-    if (process.env.NODE_ENV === 'production') {
-      config.output.filename('js/[name].js').end()
-      config.output.chunkFilename('js/[name].js').end()
+  chainWebpack: (config) => {
+    config.plugins.delete("named-chunks");
+    if (process.env.NODE_ENV === "production") {
+      config.output.filename("js/[name].js" + queryStr).end();
+      config.output.chunkFilename("js/[name].js" + queryStr).end();
       // 淇敼鐢熶骇閰嶇疆
-      config.plugin('extract-css').tap(() => [
+      config.plugin("extract-css").tap(() => [
         {
-          filename: `css/[name].css`,
-          chunkFilename: `css/[name].css`
-        }
-      ])
+          filename: `css/[name].css${queryStr}`,
+          chunkFilename: `css/[name].css${queryStr}`,
+        },
+      ]);
     }
+
+    config.optimization.splitChunks({
+      cacheGroups: pageVendor,
+    });
+
+    // config.module.rule('fonts').use('url-loader').loader('file-loader').options({ name: 'fonts/[name].[ext]', publicPath: '../' })
+    //config.module.rule('fonts').use('url-loader').loader('file-loader').options({ name: 'fonts/[name].[ext]', outputPath: '../' })
   },
   productionSourceMap: false,
   filenameHashing: false,
+  pwa: {
+    iconPaths: {
+      favicon32: "favicon.ico",
+      favicon16: "favicon.ico",
+    },
+  },
   devServer: {
     proxy: {
-      '/track': {
-        //target: 'http://bsic.asuscomm.com:7003',
-        // target: 'http://222.128.87.51:8000',
-        target: 'http://192.168.20.10:8000',
+      "/track": {
+        target: serverUrl,
         // ws: true,
         changeOrigin: true,
       },
-      '/ws': {
-        //target: 'http://bsic.asuscomm.com:7003',
-        // target: 'http://222.128.87.51:7003',
-        target: 'http://192.168.20.10:7003',
+      "/ws": {
+        target: serverUrl,
         // ws: true,
         changeOrigin: true,
       },
-      "/api": {
-        //target: "http://bsic.asuscomm.com:7003", // 澶栫綉鏄犲皠鍦板潃
-        // target: "http://222.128.87.51:8000", // 鐩爣浠g悊鎺ュ彛鍦板潃
-        target: 'http://192.168.20.10:8000',
+      "/data/api-v/app/findAllApp": {
+        target: "/",
+        //target: 'http://localhost:8080/',
+        changeOrigin: true,
+        pathRewrite: {
+          "^/data/api-v/app/findAllApp": "apps.json",
+        },
+      },
+      "/api-c": {
+        target: serverUrl,
+        changeOrigin: true,
+      },
+      "/api-v": {
+        target: serverUrl,
+        changeOrigin: true,
+      },
+      "/api-f": {
+        target: serverUrl,
         // secure: false,
-        changeOrigin: true
+        changeOrigin: true,
+      },
+      "/api-p": {
+        target: serverUrl,
+        // secure: false,
+        changeOrigin: true,
+      },
+      "/api-u": {
+        target: serverUrl,
+        changeOrigin: true,
       },
       "/httpImage": {
-        //target: "http://bsic.asuscomm.com:7003",
-        // target: "http://222.128.87.51:7003",
-        target: 'http://192.168.20.10:7003',
+        target: serverUrl,
         changeOrigin: true, //寮�鍚唬鐞�
-      }
-      ,
+      },
       "/files": {
-        //target: "http://bsic.asuscomm.com:7003",
-        // target: "http://222.128.87.51:7003",
-        target: 'http://192.168.20.10:7003',
+        target: serverUrl,
         changeOrigin: true, //寮�鍚唬鐞�
-      }
-    }
-  }
-}
+      },
+    },
+  },
+};

--
Gitblit v1.8.0