zhengxy 2 years ago
parent
commit
013c1ab9df
5 changed files with 79 additions and 9 deletions
  1. 56 5
      qwh5/package-lock.json
  2. 1 0
      qwh5/package.json
  3. 2 0
      qwh5/public/index.html
  4. 0 4
      qwh5/src/main.ts
  5. 20 0
      qwh5/vue.config.js

+ 56 - 5
qwh5/package-lock.json

@@ -2188,7 +2188,7 @@
2188 2188
     },
2189 2189
     "@vue/vue-loader-v15": {
2190 2190
       "version": "npm:vue-loader@15.10.1",
2191
-      "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-15.10.1.tgz",
2191
+      "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz",
2192 2192
       "integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==",
2193 2193
       "dev": true,
2194 2194
       "requires": {
@@ -2201,13 +2201,13 @@
2201 2201
       "dependencies": {
2202 2202
         "hash-sum": {
2203 2203
           "version": "1.0.2",
2204
-          "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz",
2204
+          "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
2205 2205
           "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
2206 2206
           "dev": true
2207 2207
         },
2208 2208
         "json5": {
2209 2209
           "version": "1.0.2",
2210
-          "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz",
2210
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
2211 2211
           "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
2212 2212
           "dev": true,
2213 2213
           "requires": {
@@ -2216,7 +2216,7 @@
2216 2216
         },
2217 2217
         "loader-utils": {
2218 2218
           "version": "1.4.2",
2219
-          "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz",
2219
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
2220 2220
           "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
2221 2221
           "dev": true,
2222 2222
           "requires": {
@@ -3137,6 +3137,57 @@
3137 3137
         }
3138 3138
       }
3139 3139
     },
3140
+    "compression-webpack-plugin": {
3141
+      "version": "10.0.0",
3142
+      "resolved": "https://registry.npmjs.org/compression-webpack-plugin/-/compression-webpack-plugin-10.0.0.tgz",
3143
+      "integrity": "sha512-wLXLIBwpul/ALcm7Aj+69X0pYT3BYt6DdPn3qrgBIh9YejV9Bju9ShhlAsjujLyWMo6SAweFIWaUoFmXZNuNrg==",
3144
+      "dev": true,
3145
+      "requires": {
3146
+        "schema-utils": "^4.0.0",
3147
+        "serialize-javascript": "^6.0.0"
3148
+      },
3149
+      "dependencies": {
3150
+        "ajv": {
3151
+          "version": "8.12.0",
3152
+          "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
3153
+          "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
3154
+          "dev": true,
3155
+          "requires": {
3156
+            "fast-deep-equal": "^3.1.1",
3157
+            "json-schema-traverse": "^1.0.0",
3158
+            "require-from-string": "^2.0.2",
3159
+            "uri-js": "^4.2.2"
3160
+          }
3161
+        },
3162
+        "ajv-keywords": {
3163
+          "version": "5.1.0",
3164
+          "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
3165
+          "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
3166
+          "dev": true,
3167
+          "requires": {
3168
+            "fast-deep-equal": "^3.1.3"
3169
+          }
3170
+        },
3171
+        "json-schema-traverse": {
3172
+          "version": "1.0.0",
3173
+          "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
3174
+          "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
3175
+          "dev": true
3176
+        },
3177
+        "schema-utils": {
3178
+          "version": "4.0.0",
3179
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz",
3180
+          "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==",
3181
+          "dev": true,
3182
+          "requires": {
3183
+            "@types/json-schema": "^7.0.9",
3184
+            "ajv": "^8.8.0",
3185
+            "ajv-formats": "^2.1.1",
3186
+            "ajv-keywords": "^5.0.0"
3187
+          }
3188
+        }
3189
+      }
3190
+    },
3140 3191
     "concat-map": {
3141 3192
       "version": "0.0.1",
3142 3193
       "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz",
@@ -7536,7 +7587,7 @@
7536 7587
     },
7537 7588
     "vue-hot-reload-api": {
7538 7589
       "version": "2.3.4",
7539
-      "resolved": "https://registry.npmmirror.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz",
7590
+      "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz",
7540 7591
       "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==",
7541 7592
       "dev": true
7542 7593
     },

+ 1 - 0
qwh5/package.json

@@ -28,6 +28,7 @@
28 28
     "@vue/cli-plugin-typescript": "~5.0.0",
29 29
     "@vue/cli-plugin-vuex": "~5.0.0",
30 30
     "@vue/cli-service": "~5.0.0",
31
+    "compression-webpack-plugin": "^10.0.0",
31 32
     "postcss-px-to-viewport": "^1.1.1",
32 33
     "typescript": "~4.5.5"
33 34
   }

+ 2 - 0
qwh5/public/index.html

@@ -4,6 +4,8 @@
4 4
     <meta charset="utf-8">
5 5
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
       <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
7
+      <meta http-equiv="pragram" content="no-cache">
8
+      <meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate">
7 9
       <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
8 10
       <script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script>
9 11
     <link rel="icon" href="<%= BASE_URL %>favicon.ico">

+ 0 - 4
qwh5/src/main.ts

@@ -2,9 +2,6 @@ import { createApp } from 'vue'
2 2
 import App from './App.vue'
3 3
 import router from './router'
4 4
 import store from './store'
5
-import ElementPlus from 'element-plus'
6
-import 'element-plus/dist/index.css'
7
-// import * as ElementPlusIconsVue from '@element-plus/icons-vue'
8 5
 import { Icon, Loading, Popover, List, Field  } from 'vant';
9 6
 import 'vant/lib/index.css';
10 7
 import './styles/index.scss'
@@ -20,7 +17,6 @@ app.use(Field)
20 17
     .use(Popover)
21 18
     .use(Loading)
22 19
     .use(Icon)
23
-    .use(ElementPlus)
24 20
     .use(store)
25 21
     .use(router).mount('#app')
26 22
 

+ 20 - 0
qwh5/vue.config.js

@@ -1,5 +1,11 @@
1 1
 const { defineConfig } = require('@vue/cli-service')
2 2
 const path = require('path')
3
+
4
+const AutoImport = require('unplugin-auto-import/webpack')
5
+const Components = require('unplugin-vue-components/webpack')
6
+const { ElementPlusResolver, VantResolver } = require('unplugin-vue-components/resolvers')
7
+const ElementPlus = require('unplugin-element-plus/webpack')
8
+const CompressionPlugin = require('compression-webpack-plugin')
3 9
 const Timestamp= new Date().getTime()
4 10
 
5 11
 function resolve (dir) {
@@ -34,5 +40,19 @@ module.exports = defineConfig({
34 40
       filename: `js/[name].${Timestamp}.js`,
35 41
       chunkFilename: `js/[name].${Timestamp}.js`
36 42
     },
43
+    plugins: [
44
+      AutoImport({
45
+        resolvers: [ElementPlusResolver()],
46
+      }),
47
+      Components({
48
+        resolvers: [ElementPlusResolver(), VantResolver()],
49
+      }),
50
+      ElementPlus(),
51
+      new CompressionPlugin({
52
+        test: /\.js$|\.html$|\.css/, //匹配文件名
53
+        threshold: 10240, //对超过10k的数据进行压缩
54
+        deleteOriginalAssets: false //是否删除原文件
55
+      }),
56
+    ],
37 57
   },
38 58
 })