From 4a800a8fc83c6bd1f86a8e847b079a51a7532c09 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期三, 20 七月 2022 15:05:58 +0800
Subject: [PATCH] 修复国标配置的bug

---
 vue.config.js |  342 ++++++++++++++++++++++++++++++--------------------------
 1 files changed, 185 insertions(+), 157 deletions(-)

diff --git a/vue.config.js b/vue.config.js
index c021ded..103c24f 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -1,157 +1,185 @@
-"use strict";
-const glob = require("glob");
-const pages = {};
-const IS_VENDOR = /[\\/]node_modules[\\/]/;
-const pageVendor = {};
-
-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_vendor, "chunk-common", chunk],
-  };
-  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.189:7009";
-//const serverUrl = "http://192.168.20.10:9000";
-
-// const cir = require("circular-dependency-plugin");
-
-module.exports = {
-  pages,
-  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(() => [
-        {
-          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: serverUrl,
-        // ws: true,
-        changeOrigin: true,
-      },
-      "/ws": {
-        target: serverUrl,
-        // ws: true,
-        changeOrigin: true,
-      },
-      "/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,
-      },
-      "/api-p": {
-        target: serverUrl,
-        // secure: false,
-        changeOrigin: true,
-      },
-      "/api-u": {
-        target: serverUrl,
-        changeOrigin: true,
-      },
-      "/httpImage": {
-        target: serverUrl,
-        changeOrigin: true, //寮�鍚唬鐞�
-      },
-      "/files": {
-        target: serverUrl,
-        changeOrigin: true, //寮�鍚唬鐞�
-      },
-      "/temp": {
-        target: serverUrl,
-        changeOrigin: true, //寮�鍚唬鐞�,
-        pathRewrite: {
-          "/temp": "",
-        },
-      },
-    },
-  },
-  // configureWebpack: {
-  //   plugins: [
-  //     new cir({
-  //       exclude: /a\.js|node_modules/,
-  //       include: /dir/,
-  //       failOnError: true,
-  //       allowAsyncCycles: false,
-  //       cwd: process.cwd(),
-  //     }),
-  //   ],
-  // },
-  /* css:{
-    loaderOptions:{
-      scss:{
-        prependData:`@import"@/assets/css/globalVariable.scss"`
-      }
-    }
-  } */
-};
+"use strict";
+const glob = require("glob");
+const { ExitStatus } = require("typescript");
+const pages = {};
+const IS_VENDOR = /[\\/]node_modules[\\/]/;
+const pageVendor = {};
+
+const pkg = require("./package.json");
+const timestamp = new Date().getTime();
+const queryStr = `?v=${pkg.version}&t=${timestamp}`;
+
+const basicApps = [
+  "index",
+  "ai",
+  "analysisPower",
+  "cameraAccess",
+  "cameraVideo",
+  "datapush",
+  "desktop",
+  "gb28181",
+  "library",
+  "search",
+  "settings",
+  "syslog",
+];
+
+const argv = process.env.npm_lifecycle_event;
+
+glob.sync("./src/pages/**/main.ts").forEach((path) => {
+  const chunk = path.split("./src/pages/")[1].split("/main.ts")[0];
+
+  // 浠呯紪璇戝熀纭�搴旂敤
+  if (argv == "release") {
+    let app = chunk.split("/");
+    if (app.length < 0 || basicApps.indexOf(app[0]) < 0) {
+      return;
+    }
+  }
+
+  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_vendor, "chunk-common", chunk],
+  };
+  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://192.168.20.189:7009";
+//const serverUrl = "http://192.168.20.116:7009";
+const iotdataServerUrl = "http://192.168.8.10:9000";
+
+// const cir = require("circular-dependency-plugin");
+
+module.exports = {
+  pages,
+  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(() => [
+        {
+          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: serverUrl,
+        // ws: true,
+        changeOrigin: true,
+      },
+      "/ws": {
+        target: serverUrl,
+        // ws: true,
+        changeOrigin: true,
+      },
+      // "/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,
+      },
+      "/api-p": {
+        target: serverUrl,
+        // secure: false,
+        changeOrigin: true,
+      },
+      "/api-u": {
+        target: serverUrl,
+        changeOrigin: true,
+      },
+      "/httpImage": {
+        target: serverUrl,
+        changeOrigin: true, // 鍥剧墖浠g悊
+      },
+      "/files": {
+        target: serverUrl,
+        changeOrigin: true, // 鏂囦欢浠g悊
+      },
+      "/iotdata": {
+        target: iotdataServerUrl,
+        changeOrigin: true, // iot鏈嶅姟,
+      },
+      "/version": {
+        target: serverUrl,
+        changeOrigin: true, // 鐗堟湰妫�鏌�,
+      },
+    },
+  },
+  // configureWebpack: {
+  //   plugins: [
+  //     new cir({
+  //       exclude: /a\.js|node_modules/,
+  //       include: /dir/,
+  //       failOnError: true,
+  //       allowAsyncCycles: false,
+  //       cwd: process.cwd(),
+  //     }),
+  //   ],
+  // },
+  /* css:{
+    loaderOptions:{
+      scss:{
+        prependData:`@import"@/assets/css/globalVariable.scss"`
+      }
+    }
+  } */
+};

--
Gitblit v1.8.0