Commit 3c59915df643006c2f68a10741acfda3062e7d9f
1 parent
402d477f
页面标题设置 & 打包配置
Showing
6 changed files
with
162 additions
and
9 deletions
index.html
| ... | ... | @@ -4,7 +4,7 @@ |
| 4 | 4 | <meta charset="UTF-8" /> |
| 5 | 5 | <link rel="icon" href="/favicon.ico" /> |
| 6 | 6 | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| 7 | - <title>Vite App</title> | |
| 7 | + <title></title> | |
| 8 | 8 | <script type="text/javascript"> |
| 9 | 9 | // chrome 71 以下不支持globalThis |
| 10 | 10 | globalThis = window | ... | ... |
package-lock.json
| ... | ... | @@ -29,6 +29,7 @@ |
| 29 | 29 | "es6-promise": "^4.2.8", |
| 30 | 30 | "typescript": "^4.4.4", |
| 31 | 31 | "vite": "^2.7.2", |
| 32 | + "vite-plugin-compression": "^0.4.0", | |
| 32 | 33 | "vue-tsc": "^0.29.8" |
| 33 | 34 | } |
| 34 | 35 | }, |
| ... | ... | @@ -2914,6 +2915,20 @@ |
| 2914 | 2915 | "stream-consume": "^0.1.0" |
| 2915 | 2916 | } |
| 2916 | 2917 | }, |
| 2918 | + "node_modules/fs-extra": { | |
| 2919 | + "version": "10.0.0", | |
| 2920 | + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", | |
| 2921 | + "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", | |
| 2922 | + "dev": true, | |
| 2923 | + "dependencies": { | |
| 2924 | + "graceful-fs": "^4.2.0", | |
| 2925 | + "jsonfile": "^6.0.1", | |
| 2926 | + "universalify": "^2.0.0" | |
| 2927 | + }, | |
| 2928 | + "engines": { | |
| 2929 | + "node": ">=12" | |
| 2930 | + } | |
| 2931 | + }, | |
| 2917 | 2932 | "node_modules/fs.realpath": { |
| 2918 | 2933 | "version": "1.0.0", |
| 2919 | 2934 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", |
| ... | ... | @@ -2996,6 +3011,12 @@ |
| 2996 | 3011 | "node": ">=4" |
| 2997 | 3012 | } |
| 2998 | 3013 | }, |
| 3014 | + "node_modules/graceful-fs": { | |
| 3015 | + "version": "4.2.8", | |
| 3016 | + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", | |
| 3017 | + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", | |
| 3018 | + "dev": true | |
| 3019 | + }, | |
| 2999 | 3020 | "node_modules/has": { |
| 3000 | 3021 | "version": "1.0.3", |
| 3001 | 3022 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", |
| ... | ... | @@ -3223,6 +3244,18 @@ |
| 3223 | 3244 | "integrity": "sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==", |
| 3224 | 3245 | "dev": true |
| 3225 | 3246 | }, |
| 3247 | + "node_modules/jsonfile": { | |
| 3248 | + "version": "6.1.0", | |
| 3249 | + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", | |
| 3250 | + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", | |
| 3251 | + "dev": true, | |
| 3252 | + "dependencies": { | |
| 3253 | + "universalify": "^2.0.0" | |
| 3254 | + }, | |
| 3255 | + "optionalDependencies": { | |
| 3256 | + "graceful-fs": "^4.1.6" | |
| 3257 | + } | |
| 3258 | + }, | |
| 3226 | 3259 | "node_modules/jstransformer": { |
| 3227 | 3260 | "version": "1.0.0", |
| 3228 | 3261 | "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", |
| ... | ... | @@ -3948,6 +3981,15 @@ |
| 3948 | 3981 | "node": ">=4" |
| 3949 | 3982 | } |
| 3950 | 3983 | }, |
| 3984 | + "node_modules/universalify": { | |
| 3985 | + "version": "2.0.0", | |
| 3986 | + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", | |
| 3987 | + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", | |
| 3988 | + "dev": true, | |
| 3989 | + "engines": { | |
| 3990 | + "node": ">= 10.0.0" | |
| 3991 | + } | |
| 3992 | + }, | |
| 3951 | 3993 | "node_modules/upath": { |
| 3952 | 3994 | "version": "2.0.1", |
| 3953 | 3995 | "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", |
| ... | ... | @@ -3994,6 +4036,43 @@ |
| 3994 | 4036 | } |
| 3995 | 4037 | } |
| 3996 | 4038 | }, |
| 4039 | + "node_modules/vite-plugin-compression": { | |
| 4040 | + "version": "0.4.0", | |
| 4041 | + "resolved": "https://registry.npmjs.org/vite-plugin-compression/-/vite-plugin-compression-0.4.0.tgz", | |
| 4042 | + "integrity": "sha512-CGC8DfIey0k4S4o54ylwFIzT1Mjb9s7cMmlXj6DMM1MZZIeWFjPCJc6YZWjnnS28ul3r7R1nmihvYvGg/lOYsQ==", | |
| 4043 | + "dev": true, | |
| 4044 | + "dependencies": { | |
| 4045 | + "chalk": "^4.1.2", | |
| 4046 | + "debug": "^4.3.3", | |
| 4047 | + "fs-extra": "^10.0.0" | |
| 4048 | + }, | |
| 4049 | + "peerDependencies": { | |
| 4050 | + "vite": ">=2.0.0" | |
| 4051 | + } | |
| 4052 | + }, | |
| 4053 | + "node_modules/vite-plugin-compression/node_modules/debug": { | |
| 4054 | + "version": "4.3.3", | |
| 4055 | + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", | |
| 4056 | + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", | |
| 4057 | + "dev": true, | |
| 4058 | + "dependencies": { | |
| 4059 | + "ms": "2.1.2" | |
| 4060 | + }, | |
| 4061 | + "engines": { | |
| 4062 | + "node": ">=6.0" | |
| 4063 | + }, | |
| 4064 | + "peerDependenciesMeta": { | |
| 4065 | + "supports-color": { | |
| 4066 | + "optional": true | |
| 4067 | + } | |
| 4068 | + } | |
| 4069 | + }, | |
| 4070 | + "node_modules/vite-plugin-compression/node_modules/ms": { | |
| 4071 | + "version": "2.1.2", | |
| 4072 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", | |
| 4073 | + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", | |
| 4074 | + "dev": true | |
| 4075 | + }, | |
| 3997 | 4076 | "node_modules/vite-plugin-legacy": { |
| 3998 | 4077 | "version": "2.1.0", |
| 3999 | 4078 | "resolved": "https://registry.npmjs.org/vite-plugin-legacy/-/vite-plugin-legacy-2.1.0.tgz", |
| ... | ... | @@ -6393,6 +6472,17 @@ |
| 6393 | 6472 | "stream-consume": "^0.1.0" |
| 6394 | 6473 | } |
| 6395 | 6474 | }, |
| 6475 | + "fs-extra": { | |
| 6476 | + "version": "10.0.0", | |
| 6477 | + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", | |
| 6478 | + "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", | |
| 6479 | + "dev": true, | |
| 6480 | + "requires": { | |
| 6481 | + "graceful-fs": "^4.2.0", | |
| 6482 | + "jsonfile": "^6.0.1", | |
| 6483 | + "universalify": "^2.0.0" | |
| 6484 | + } | |
| 6485 | + }, | |
| 6396 | 6486 | "fs.realpath": { |
| 6397 | 6487 | "version": "1.0.0", |
| 6398 | 6488 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", |
| ... | ... | @@ -6450,6 +6540,12 @@ |
| 6450 | 6540 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", |
| 6451 | 6541 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" |
| 6452 | 6542 | }, |
| 6543 | + "graceful-fs": { | |
| 6544 | + "version": "4.2.8", | |
| 6545 | + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", | |
| 6546 | + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", | |
| 6547 | + "dev": true | |
| 6548 | + }, | |
| 6453 | 6549 | "has": { |
| 6454 | 6550 | "version": "1.0.3", |
| 6455 | 6551 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", |
| ... | ... | @@ -6616,6 +6712,16 @@ |
| 6616 | 6712 | "integrity": "sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==", |
| 6617 | 6713 | "dev": true |
| 6618 | 6714 | }, |
| 6715 | + "jsonfile": { | |
| 6716 | + "version": "6.1.0", | |
| 6717 | + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", | |
| 6718 | + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", | |
| 6719 | + "dev": true, | |
| 6720 | + "requires": { | |
| 6721 | + "graceful-fs": "^4.1.6", | |
| 6722 | + "universalify": "^2.0.0" | |
| 6723 | + } | |
| 6724 | + }, | |
| 6619 | 6725 | "jstransformer": { |
| 6620 | 6726 | "version": "1.0.0", |
| 6621 | 6727 | "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", |
| ... | ... | @@ -7181,6 +7287,12 @@ |
| 7181 | 7287 | "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", |
| 7182 | 7288 | "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==" |
| 7183 | 7289 | }, |
| 7290 | + "universalify": { | |
| 7291 | + "version": "2.0.0", | |
| 7292 | + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", | |
| 7293 | + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", | |
| 7294 | + "dev": true | |
| 7295 | + }, | |
| 7184 | 7296 | "upath": { |
| 7185 | 7297 | "version": "2.0.1", |
| 7186 | 7298 | "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", |
| ... | ... | @@ -7199,6 +7311,34 @@ |
| 7199 | 7311 | "rollup": "^2.59.0" |
| 7200 | 7312 | } |
| 7201 | 7313 | }, |
| 7314 | + "vite-plugin-compression": { | |
| 7315 | + "version": "0.4.0", | |
| 7316 | + "resolved": "https://registry.npmjs.org/vite-plugin-compression/-/vite-plugin-compression-0.4.0.tgz", | |
| 7317 | + "integrity": "sha512-CGC8DfIey0k4S4o54ylwFIzT1Mjb9s7cMmlXj6DMM1MZZIeWFjPCJc6YZWjnnS28ul3r7R1nmihvYvGg/lOYsQ==", | |
| 7318 | + "dev": true, | |
| 7319 | + "requires": { | |
| 7320 | + "chalk": "^4.1.2", | |
| 7321 | + "debug": "^4.3.3", | |
| 7322 | + "fs-extra": "^10.0.0" | |
| 7323 | + }, | |
| 7324 | + "dependencies": { | |
| 7325 | + "debug": { | |
| 7326 | + "version": "4.3.3", | |
| 7327 | + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", | |
| 7328 | + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", | |
| 7329 | + "dev": true, | |
| 7330 | + "requires": { | |
| 7331 | + "ms": "2.1.2" | |
| 7332 | + } | |
| 7333 | + }, | |
| 7334 | + "ms": { | |
| 7335 | + "version": "2.1.2", | |
| 7336 | + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", | |
| 7337 | + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", | |
| 7338 | + "dev": true | |
| 7339 | + } | |
| 7340 | + } | |
| 7341 | + }, | |
| 7202 | 7342 | "vite-plugin-legacy": { |
| 7203 | 7343 | "version": "2.1.0", |
| 7204 | 7344 | "resolved": "https://registry.npmjs.org/vite-plugin-legacy/-/vite-plugin-legacy-2.1.0.tgz", | ... | ... |
package.json
src/utils/progress.ts
| ... | ... | @@ -8,6 +8,9 @@ router.beforeEach((to: any, from: any, next: any) => { |
| 8 | 8 | NProgress.start() |
| 9 | 9 | const hasToken = 1 && 1 |
| 10 | 10 | const whiteList = ['/login'] |
| 11 | + | |
| 12 | + // 页面标题设置 | |
| 13 | + globalThis.document.title = to.meta.title? to.meta.title: import.meta.env.VITE_APP_TITLE | |
| 11 | 14 | |
| 12 | 15 | if (hasToken) { |
| 13 | 16 | if (to.path === '/login') { |
| ... | ... | @@ -22,10 +25,6 @@ router.beforeEach((to: any, from: any, next: any) => { |
| 22 | 25 | next() |
| 23 | 26 | } else { |
| 24 | 27 | if (from.path !== '/') { |
| 25 | - // Vue.prototype.$message({ | |
| 26 | - // type: 'error', | |
| 27 | - // message: '请重新登录' | |
| 28 | - // }) | |
| 29 | 28 | console.log('请重新登录') |
| 30 | 29 | } |
| 31 | 30 | next({ path: '/login' }) | ... | ... |
src/views/tengxi/index.vue
vite.config.ts
| 1 | 1 | import { defineConfig, loadEnv } from 'vite' |
| 2 | 2 | import vue from '@vitejs/plugin-vue' |
| 3 | -import legacy from '@vitejs/plugin-legacy' | |
| 3 | +import viteCompression from 'vite-plugin-compression' // gzip压缩 | |
| 4 | +import legacy from '@vitejs/plugin-legacy' // 兼容性 | |
| 4 | 5 | const { resolve } = require('path') |
| 5 | 6 | |
| 6 | 7 | // https://vitejs.dev/config/ |
| 7 | 8 | export default ({command, mode}) => { |
| 8 | 9 | const envConfig = loadEnv(mode, './'); |
| 10 | + let isOpenSourceMap = mode === 'production'? false: true | |
| 9 | 11 | return defineConfig({ |
| 10 | 12 | plugins: [ |
| 11 | 13 | vue(), |
| 14 | + viteCompression(), | |
| 12 | 15 | legacy({ |
| 13 | 16 | targets: ['> 1%, last 2 version, ie >= 11, chrome >= 69'], |
| 14 | 17 | additionalLegacyPolyfills: ['regenerator-runtime/runtime'], |
| ... | ... | @@ -25,6 +28,7 @@ export default ({command, mode}) => { |
| 25 | 28 | }, |
| 26 | 29 | server: { |
| 27 | 30 | base: envConfig.VITE_BASE_URL, |
| 31 | + open: false | |
| 28 | 32 | }, |
| 29 | 33 | css: { |
| 30 | 34 | postcss: { |
| ... | ... | @@ -50,8 +54,18 @@ export default ({command, mode}) => { |
| 50 | 54 | } |
| 51 | 55 | }, |
| 52 | 56 | build: { |
| 53 | - target: 'es2015', | |
| 54 | - outDir: 'dist' | |
| 57 | + sourcemap: isOpenSourceMap, | |
| 58 | + manifest: true, | |
| 59 | + target: 'esnext', | |
| 60 | + outDir: 'dist', | |
| 61 | + chunkSizeWarningLimit: 600, | |
| 62 | + rollupOptions: { | |
| 63 | + output: { | |
| 64 | + manualChunks: { | |
| 65 | + 'element-plus': ['element-plus'], | |
| 66 | + } | |
| 67 | + } | |
| 68 | + } | |
| 55 | 69 | }, |
| 56 | 70 | }) |
| 57 | 71 | } | ... | ... |