From 149b22dc62c85a5668f24073210ac5c0b1955520 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期一, 23 五月 2022 19:12:44 +0800
Subject: [PATCH] 添加基础应用的编译规则
---
vue.config.js | 128 +++++++++++++++++++++++++-----------------
package.json | 3
2 files changed, 78 insertions(+), 53 deletions(-)
diff --git a/package.json b/package.json
index c00fb28..83b21fa 100644
--- a/package.json
+++ b/package.json
@@ -1,10 +1,11 @@
{
"name": "vue-smart-ai",
- "version": "2.0.0",
+ "version": "2.0.1",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build && node appPack.js",
+ "release": "vue-cli-service build basic&& node appPack.js",
"lint": "vue-cli-service lint"
},
"dependencies": {
diff --git a/vue.config.js b/vue.config.js
index b4a7da8..2466bfa 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -1,25 +1,52 @@
-"use strict";
-const glob = require("glob");
-const pages = {};
-const IS_VENDOR = /[\\/]node_modules[\\/]/;
-const pageVendor = {};
+"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 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",
+ "systemSettings"
+]
+
+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];
- const chunk_vendor = `${chunk}-vendors`;
- const chunk_common = `${chunk}-common`;
+ 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],
- };
+ chunks: [chunk_vendor, "chunk-common", chunk]
+ }
if (chunk != "index") {
- pages[chunk].filename = "view/" + chunk + ".html";
+ pages[chunk].filename = "view/" + chunk + ".html"
}
pageVendor[chunk_vendor] = {
@@ -27,8 +54,8 @@
priority: -11,
chunks: (c) => c.name === chunk,
test: /\.js$/,
- enforce: true,
- };
+ enforce: true
+ }
// pageVendor[chunk_common] = {
// name: chunk_common,
@@ -38,38 +65,35 @@
// reuseExistingChunk: true,
// enforce: true
// }
-});
+})
-// const serverUrl = "http://192.168.20.189:7009"; // 缇婁簲//
-const serverUrl = "http://192.168.20.117:7009";
+const serverUrl = "http://192.168.20.189:7009"
// const serverUrl = "http://192.168.8.10:7009";
//const serverUrl = "http://192.168.8.118:7009";
-const serverUrl2 = "http://192.168.8.10:9000";
-// const serverUrl = "http://192.168.20.10:7009";
-// const serverUrl2 = "http://192.168.20.10:9000";
+const iotdataServerUrl = "http://192.168.8.10:9000"
// const cir = require("circular-dependency-plugin");
module.exports = {
pages,
chainWebpack: (config) => {
- config.plugins.delete("named-chunks");
+ 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.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}`,
- },
- ]);
+ chunkFilename: `css/[name].css${queryStr}`
+ }
+ ])
}
config.optimization.splitChunks({
- cacheGroups: pageVendor,
- });
+ 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: '../' })
@@ -79,69 +103,69 @@
pwa: {
iconPaths: {
favicon32: "favicon.ico",
- favicon16: "favicon.ico",
- },
+ favicon16: "favicon.ico"
+ }
},
devServer: {
proxy: {
"/track": {
target: serverUrl,
// ws: true,
- changeOrigin: true,
+ changeOrigin: true
},
"/ws": {
target: serverUrl,
// ws: true,
- changeOrigin: true,
+ changeOrigin: true
},
"/data/api-v/app/findAllApp": {
- // target: '/',
- target: "http://localhost:8081/",
+ target: "/",
+ // target: "http://localhost:8081/",
changeOrigin: true,
pathRewrite: {
- "^/data/api-v/app/findAllApp": "apps.json",
- },
+ "^/data/api-v/app/findAllApp": "apps.json"
+ }
},
"/api-c": {
target: serverUrl,
- changeOrigin: true,
+ changeOrigin: true
},
"/api-v": {
target: serverUrl,
- changeOrigin: true,
+ changeOrigin: true
},
"/api-f": {
target: serverUrl,
// secure: false,
- changeOrigin: true,
+ changeOrigin: true
},
"/api-p": {
target: serverUrl,
// secure: false,
- changeOrigin: true,
+ changeOrigin: true
},
"/api-u": {
target: serverUrl,
- changeOrigin: true,
+ changeOrigin: true
},
"/httpImage": {
target: serverUrl,
- changeOrigin: true, //寮�鍚唬鐞�
+ changeOrigin: true //寮�鍚唬鐞�
},
"/files": {
target: serverUrl,
- changeOrigin: true, //寮�鍚唬鐞�
+ changeOrigin: true //寮�鍚唬鐞�
},
"/iotdata": {
- target: serverUrl2,
- changeOrigin: true, //寮�鍚唬鐞�,
+ target: iotdataServerUrl,
+ changeOrigin: true //寮�鍚唬鐞�,
},
"/version": {
target: serverUrl,
- changeOrigin: true, //寮�鍚唬鐞�,
- },
- },
- },
+ changeOrigin: true //寮�鍚唬鐞�,
+ }
+ }
+ }
// configureWebpack: {
// plugins: [
// new cir({
@@ -160,4 +184,4 @@
}
}
} */
-};
+}
--
Gitblit v1.8.0