Hwf 3 місяців тому
батько
коміт
97c1e1e20b
5 змінених файлів з 39 додано та 34 видалено
  1. 1 0
      package-lock.json
  2. 1 0
      package.json
  3. 3 1
      src/main.ts
  4. 2 33
      vite/plugins/index.ts
  5. 32 0
      vite/plugins/legacy.ts

+ 1 - 0
package-lock.json

@@ -34,6 +34,7 @@
         "axios": "1.6.8",
         "bignumber.js": "^9.1.2",
         "bpmn-js": "16.4.0",
+        "core-js": "^3.41.0",
         "crypto-js": "4.2.0",
         "diagram-js": "12.3.0",
         "didi": "9.0.2",

+ 1 - 0
package.json

@@ -43,6 +43,7 @@
     "axios": "1.6.8",
     "bignumber.js": "^9.1.2",
     "bpmn-js": "16.4.0",
+    "core-js": "^3.41.0",
     "crypto-js": "4.2.0",
     "diagram-js": "12.3.0",
     "didi": "9.0.2",

+ 3 - 1
src/main.ts

@@ -1,4 +1,6 @@
 import { createApp } from 'vue';
+import 'core-js/stable'; // 引入所有稳定版 Polyfill
+import 'regenerator-runtime/runtime'; // 支持 async/await
 // global css
 import 'virtual:uno.css';
 import '@/assets/styles/index.scss';
@@ -8,7 +10,7 @@ import 'element-plus/theme-chalk/dark/css-vars.css';
 import App from './App.vue';
 import store from './store';
 import router from './router';
-import print from 'vue3-print-nb'
+import print from 'vue3-print-nb';
 
 // 自定义指令
 import directive from './directive';

+ 2 - 33
vite/plugins/index.ts

@@ -1,9 +1,9 @@
 import vue from '@vitejs/plugin-vue';
-import legacy from '@vitejs/plugin-legacy';
 import createUnoCss from './unocss';
 import createAutoImport from './auto-import';
 import createComponents from './components';
 import createIcons from './icons';
+import createLegacy from './legacy';
 import createSvgIconsPlugin from './svg-icon';
 import createCompression from './compression';
 import createSetupExtend from './setup-extend';
@@ -23,37 +23,6 @@ export default (viteEnv: any, isBuild = false): [] => {
   vitePlugins.push(createSetupExtend());
   vitePlugins.push(createI18n(path));
   vitePlugins.push(ViteImageOptimizer());
-  vitePlugins.push(
-    legacy({
-      targets: ['defaults', 'Chrome >= 51'],
-      additionalLegacyPolyfills: [
-        'regenerator-runtime/runtime'
-      ],
-      renderLegacyChunks: true,
-      polyfills: [
-        'es.symbol',
-        'es.array.filter',
-        'es.promise',
-        'es.promise.finally',
-        'es.object.assign',
-        'es.map',
-        'es.set',
-        'es.array.for-each',
-        'es.object.define-properties',
-        'es.object.define-property',
-        'es.object.get-own-property-descriptor',
-        'es.object.get-own-property-descriptors',
-        'es.object.keys',
-        'es.object.to-string',
-        'web.dom-collections.for-each',
-        'esnext.global-this',
-        'esnext.string.match-all',
-        'es.array.iterator',
-        'es.string.includes',
-        'es.string.starts-with',
-        'es.object.values',
-      ]
-    })
-  );
+  vitePlugins.push(createLegacy());
   return vitePlugins;
 };

+ 32 - 0
vite/plugins/legacy.ts

@@ -0,0 +1,32 @@
+import legacy from '@vitejs/plugin-legacy';
+
+export default () => {
+  return legacy({
+    targets: ['defaults', 'Chrome >= 51'],
+    additionalLegacyPolyfills: ['regenerator-runtime/runtime'],
+    renderLegacyChunks: true,
+    polyfills: [
+      'es.symbol',
+      'es.array.filter',
+      'es.promise',
+      'es.promise.finally',
+      'es.object.assign',
+      'es.map',
+      'es.set',
+      'es.array.for-each',
+      'es.object.define-properties',
+      'es.object.define-property',
+      'es.object.get-own-property-descriptor',
+      'es.object.get-own-property-descriptors',
+      'es.object.keys',
+      'es.object.to-string',
+      'web.dom-collections.for-each',
+      'esnext.global-this',
+      'esnext.string.match-all',
+      'es.array.iterator',
+      'es.string.includes',
+      'es.string.starts-with',
+      'es.object.values'
+    ]
+  });
+};