From a7b98fe3d66043854d5731cee8b130229e2b5dba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=A5=94=E8=B7=91=E7=9A=84=E9=9D=A2=E6=9D=A1?=
 <1262327911@qq.com>
Date: Thu, 2 Feb 2023 20:54:02 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E5=88=9D=E5=A7=8B?=
 =?UTF-8?q?=E5=8C=96=E5=87=BD=E6=95=B0=EF=BC=8C=E5=85=A8=E5=B1=80=E5=BC=82?=
 =?UTF-8?q?=E6=AD=A5=E9=94=99=E8=AF=AF=E6=8D=95=E8=8E=B7=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/main.ts                 | 6 ++++--
 src/plugins/index.ts        | 1 +
 src/plugins/initFunction.ts | 9 +++++++++
 3 files changed, 14 insertions(+), 2 deletions(-)
 create mode 100644 src/plugins/initFunction.ts

diff --git a/src/main.ts b/src/main.ts
index cf9b86df..d85d46cb 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -3,7 +3,7 @@ import App from './App.vue'
 import router, { setupRouter } from '@/router'
 import i18n from '@/i18n/index'
 import { setupStore } from '@/store'
-import { setupNaive, setupDirectives, setupCustomComponents } from '@/plugins'
+import { setupNaive, setupDirectives, setupCustomComponents, initFunction } from '@/plugins'
 import { GoAppProvider } from '@/components/GoAppProvider/index'
 import { setHtmlTheme } from '@/utils'
 
@@ -53,4 +53,6 @@ async function appInit() {
   window['$vue'] = app
 }
 
-void appInit()
+await appInit()
+
+await initFunction()
diff --git a/src/plugins/index.ts b/src/plugins/index.ts
index c500f63a..d1ac07ba 100644
--- a/src/plugins/index.ts
+++ b/src/plugins/index.ts
@@ -2,3 +2,4 @@ export { setupNaive } from '@/plugins/naive'
 export { setupDirectives } from '@/plugins/directives'
 export { setupCustomComponents } from '@/plugins/customComponents'
 export { icon } from '@/plugins/icon'
+export { initFunction } from '@/plugins/initFunction'
diff --git a/src/plugins/initFunction.ts b/src/plugins/initFunction.ts
new file mode 100644
index 00000000..1df1db45
--- /dev/null
+++ b/src/plugins/initFunction.ts
@@ -0,0 +1,9 @@
+/**
+ * * 页面初始化就执行的函数
+ */
+export const initFunction = async () => {
+  // 捕获全局错误
+  window.addEventListener("unhandledrejection", event => {
+    console.warn(`UNHANDLED PROMISE REJECTION: ${event.reason}`);
+  });
+}
\ No newline at end of file