lifanagju_citu 6 месяцев назад
Родитель
Сommit
a24f69d540
2 измененных файлов с 33 добавлено и 12 удалено
  1. 13 6
      src/App.vue
  2. 20 6
      vite.config.mjs

+ 13 - 6
src/App.vue

@@ -7,14 +7,17 @@ import axios from 'axios'
 const openCheckVersion = true // 开启检测版本
 const timer = ref(null)
 const setIntervalTime = 300000 // 300000 五分钟
+function open () {
+  if (timer.value) clearInterval(timer.value)
+  timer.value = setInterval(() => { checkVersion() }, setIntervalTime)
+}
 onMounted(() => {
   nextTick(() => {
     console.log('baseurl:', import.meta.env?.VITE_BASE_URL, 'version:', import.meta.env?.VITE_VERSION, process?.env?.NODE_ENV)
     //
     const process_ENV = process?.env?.NODE_ENV || ''
     if ((process_ENV === 'production' || process_ENV === 'development') && openCheckVersion) {
-      if (timer.value) clearInterval(timer.value)
-      timer.value = setInterval(() => { checkVersion() }, setIntervalTime)
+      open()
     }
   })
 })
@@ -33,11 +36,15 @@ const checkVersion = () => {
     headers: { ['tenant-id']: tenantId }
   }).then((res) => {
     if (res?.data?.data !== version) {
-      const option = {
-        autoCloseTime: setIntervalTime > 15000 ? setIntervalTime - 10000 : setIntervalTime >= 5000 ? setIntervalTime - 1000 : setIntervalTime
-      }
-      Confirm('系统提示', '发现新版本,是否立即刷新页面', option).then(() => {
+      // const option = {
+      //   autoCloseTime: setIntervalTime > 15000 ? setIntervalTime - 10000 : setIntervalTime >= 5000 ? setIntervalTime - 1000 : setIntervalTime
+      // }
+      clearInterval(timer.value)
+      timer.value = null
+      Confirm('系统提示', '发现新版本,是否立即刷新页面').then(() => {
         window.location.reload()
+      }).catch(() => {
+        open()
       })
     }
   }).catch(err => {

+ 20 - 6
vite.config.mjs

@@ -62,13 +62,27 @@ export default defineConfig({
       '.vue',
     ],
   },
+  build: {
+    rollupOptions: {
+      output: {
+        // 设置静态资源引用的基础路径
+        assetFileNames: 'assets/[name].[ext]',
+        chunkFileNames: 'chunks/[name].[hash].js',
+        entryFileNames: '[name].js',
+      },
+    },
+  },
+   // 配置静态资源处理
+   publicDir: 'public', // 设置静态资源目录
+   assetsDir: 'assets', // 设置构建后的静态资源目录
+   base: '/', // 设置应用的基本URL
   server: {
     port: 3000
-  },
-  configureWebpack: {
-    output: {
-      filename: 'js/[name].' + new Date().getTime() + '.js',
-      chunkFilename: 'js/[name].' + new Date().getTime() + '.js'
-    }
   }
+  // configureWebpack: {
+  //   output: {
+  //     filename: 'js/[name].' + new Date().getTime() + '.js',
+  //     chunkFilename: 'js/[name].' + new Date().getTime() + '.js'
+  //   }
+  // }
 })