diff --git a/.eslintignore b/.eslintignore index 73cebaf..c622f86 100644 --- a/.eslintignore +++ b/.eslintignore @@ -6,4 +6,4 @@ babel.config.js package.json postcss.config.js .eslintrc.js -vue.config.js +vite.config.js diff --git a/package-lock.json b/package-lock.json index fcc4d61..30b811c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2670,7 +2670,6 @@ "version": "10.0.0", "resolved": "https://registry.nlark.com/fs-extra/download/fs-extra-10.0.0.tgz", "integrity": "sha1-n/YbZV3eU/s0qC34S7IUzoAuF8E=", - "dev": true, "requires": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -2832,8 +2831,7 @@ "graceful-fs": { "version": "4.2.8", "resolved": "https://registry.nlark.com/graceful-fs/download/graceful-fs-4.2.8.tgz", - "integrity": "sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo=", - "dev": true + "integrity": "sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo=" }, "hard-rejection": { "version": "2.1.0", @@ -3427,7 +3425,6 @@ "version": "6.1.0", "resolved": "https://registry.npm.taobao.org/jsonfile/download/jsonfile-6.1.0.tgz?cache=0&sync_timestamp=1604161822397&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjsonfile%2Fdownload%2Fjsonfile-6.1.0.tgz", "integrity": "sha1-vFWyY0eTxnnsZAMJTrE2mKbsCq4=", - "dev": true, "requires": { "graceful-fs": "^4.1.6", "universalify": "^2.0.0" @@ -4834,8 +4831,7 @@ "universalify": { "version": "2.0.0", "resolved": "https://registry.npm.taobao.org/universalify/download/universalify-2.0.0.tgz", - "integrity": "sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc=", - "dev": true + "integrity": "sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc=" }, "unplugin": { "version": "0.2.16", @@ -4907,6 +4903,16 @@ "rollup": "^2.57.0" } }, + "vite-plugin-compression": { + "version": "0.3.5", + "resolved": "https://registry.nlark.com/vite-plugin-compression/download/vite-plugin-compression-0.3.5.tgz", + "integrity": "sha1-HlM460PmASjebW8isqq/Dj3AwX8=", + "requires": { + "chalk": "^4.1.2", + "debug": "^4.3.2", + "fs-extra": "^10.0.0" + } + }, "vite-plugin-linter": { "version": "1.0.1", "resolved": "https://registry.npmmirror.com/vite-plugin-linter/download/vite-plugin-linter-1.0.1.tgz", diff --git a/package.json b/package.json index 0bdc377..c3054c2 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "element-plus": "^1.1.0-beta.24", "lodash": "^4.17.21", "vite": "^2.6.4", + "vite-plugin-compression": "^0.3.5", "vite-plugin-windicss": "^1.4.11", "vue": "^3.2.16", "vue-router": "^4.0.12", diff --git a/src/routers/index.js b/src/routers/index.js index 1096374..b7dc56a 100644 --- a/src/routers/index.js +++ b/src/routers/index.js @@ -3,61 +3,61 @@ import { createRouter, createWebHistory } from 'vue-router'; export const routes = [ { - path: '/network-config', + path: '/corrosion/network-config', name: 'network-config', meta: { title: '网络参数配置', icon: 'el-icon-setting' }, component: () => import('@/views/network-config.vue'), }, { - path: '/function-config', + path: '/corrosion/function-config', name: 'function-config', meta: { title: '功能参数配置', icon: 'el-icon-set-up' }, component: () => import('@/views/function-config.vue'), }, { - path: '/device-create', + path: '/corrosion/device-create', name: 'device-create', meta: { title: '设备添加', icon: 'el-icon-plus' }, component: () => import('@/views/device-create.vue'), }, { - path: '/devices', + path: '/corrosion/devices', name: 'devices', meta: { title: '设备管理', icon: 'el-icon-box' }, component: () => import('@/views/device-list.vue'), }, { - path: '/data-history', + path: '/corrosion/data-history', name: 'data-history', meta: { title: '历史数据查看', icon: 'el-icon-document-copy' }, component: () => import('@/views/data-history.vue'), }, { - path: '/statistical-history', + path: '/corrosion/statistical-history', name: 'statistical-history', meta: { title: '历史数据统计', icon: 'el-icon-data-line' }, component: () => import('@/views/statistical-history.vue'), }, { - path: '/statistical-realtime', + path: '/corrosion/statistical-realtime', name: 'statistical-realtime', meta: { title: '实时数据统计', icon: 'el-icon-time' }, component: () => import('@/views/statistical-realtime.vue'), }, { - path: '/months', + path: '/corrosion/months', name: 'months', meta: { title: '月累计数据分析', icon: 'el-icon-data-analysis' }, component: () => import('@/views/month-data.vue'), }, { - path: '/communication-log', + path: '/corrosion/communication-log', name: 'communication-log', meta: { title: '通讯日志', icon: 'el-icon-phone-outline' }, component: () => import('@/views/communication-log.vue'), }, { - path: '/access-log', + path: '/corrosion/access-log', name: 'access-log', meta: { title: '访问日志', icon: 'el-icon-message' }, component: () => import('@/views/access-log.vue'), diff --git a/vite.config.js b/vite.config.js index fac506d..aaa8156 100644 --- a/vite.config.js +++ b/vite.config.js @@ -4,12 +4,14 @@ import WindiCSS from 'vite-plugin-windicss'; import { defineConfig } from 'vite'; import path from 'path'; import vue from '@vitejs/plugin-vue'; +import viteCompression from 'vite-plugin-compression'; const resolve = dir => path.join(__dirname, dir); // https://vitejs.dev/config/ export default defineConfig({ - plugins: [vue(), WindiCSS(), Components({ resolvers: [ElementPlusResolver()] })], + base: '/corrosion/', + plugins: [vue(), WindiCSS(), Components({ resolvers: [ElementPlusResolver()] }), viteCompression()], resolve: { alias: { '~': __dirname, @@ -22,4 +24,15 @@ export default defineConfig({ apis: resolve('src/apis'), }, }, + build: { + rollupOptions: { + output: { + manualChunks(id) { + if (id.includes('node_modules')) { + return id.toString().split('node_modules/')[1].split('/')[0].toString(); + } + }, + }, + }, + }, });