From 1ce875be27d9011c3944c6b975d9f817947ecdf8 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期三, 01 十月 2025 16:22:24 +0800
Subject: [PATCH] 登录、注册

---
 entry/src/main/ets/utils/PromptActionClass.ets |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/entry/src/main/ets/utils/PromptActionClass.ets b/entry/src/main/ets/utils/PromptActionClass.ets
new file mode 100644
index 0000000..44edfba
--- /dev/null
+++ b/entry/src/main/ets/utils/PromptActionClass.ets
@@ -0,0 +1,63 @@
+// PromptActionClass.ets
+import { BusinessError } from '@kit.BasicServicesKit';
+import { ComponentContent, promptAction, UIContext } from '@kit.ArkUI';
+
+export class PromptActionClass {
+  static ctx: UIContext;
+  static contentNode: ComponentContent<Object>;
+  static options: promptAction.BaseDialogOptions;
+
+  static setContext(context: UIContext) {
+    PromptActionClass.ctx = context;
+  }
+
+  static setContentNode(node: ComponentContent<Object>) {
+    PromptActionClass.contentNode = node;
+  }
+
+  static setOptions(options: promptAction.BaseDialogOptions) {
+    PromptActionClass.options = options;
+  }
+
+  static openDialog() {
+    if (PromptActionClass.contentNode !== null) {
+      PromptActionClass.ctx.getPromptAction().openCustomDialog(PromptActionClass.contentNode, PromptActionClass.options)
+        .then(() => {
+          console.info('OpenCustomDialog complete.');
+        })
+        .catch((error: BusinessError) => {
+          let message = (error as BusinessError).message;
+          let code = (error as BusinessError).code;
+          console.error(`OpenCustomDialog args error code is ${code}, message is ${message}`);
+        })
+    }
+  }
+
+  static closeDialog() {
+    if (PromptActionClass.contentNode !== null) {
+      PromptActionClass.ctx.getPromptAction().closeCustomDialog(PromptActionClass.contentNode)
+        .then(() => {
+          console.info('CloseCustomDialog complete.');
+        })
+        .catch((error: BusinessError) => {
+          let message = (error as BusinessError).message;
+          let code = (error as BusinessError).code;
+          console.error(`CloseCustomDialog args error code is ${code}, message is ${message}`);
+        })
+    }
+  }
+
+  static updateDialog(options: promptAction.BaseDialogOptions) {
+    if (PromptActionClass.contentNode !== null) {
+      PromptActionClass.ctx.getPromptAction().updateCustomDialog(PromptActionClass.contentNode, options)
+        .then(() => {
+          console.info('UpdateCustomDialog complete.');
+        })
+        .catch((error: BusinessError) => {
+          let message = (error as BusinessError).message;
+          let code = (error as BusinessError).code;
+          console.error(`UpdateCustomDialog args error code is ${code}, message is ${message}`);
+        })
+    }
+  }
+}
\ No newline at end of file

--
Gitblit v1.8.0