diff --git a/src/main/ets/pages/XWebview.ets b/src/main/ets/pages/XWebview.ets index ec3fb73..37efbc1 100644 --- a/src/main/ets/pages/XWebview.ets +++ b/src/main/ets/pages/XWebview.ets @@ -12,7 +12,6 @@ import { SZYXLocalStorageHelper } from '../utils/SZYXLocalStorageHelper'; import { SZYXLocalStorageKeys } from '../utils/SZYXLocalStorageKeys'; import { XWebManager } from '../utils/XWebManager'; import { TitleBarBtn } from '../view/SafeView'; -import { HttpHelper } from '../http/HttpHelper'; @Entry({ routeName: 'XWebview' }) @Component @@ -46,6 +45,10 @@ export struct XWebview { } aboutToAppear(): void { + XWebManager.onClose(()=>{ + router.back() + }) + SZYXLocalStorageHelper.storage.setOrCreate('refresh_web_base', -1) SZYXLocalStorageHelper.storage.setOrCreate(SZYXLocalStorageKeys.XWebViewCLose, undefined) webview.WebviewController.setWebDebuggingAccess(true); diff --git a/src/main/ets/utils/XWebHelper.ets b/src/main/ets/utils/XWebHelper.ets index 2521305..9a658c6 100644 --- a/src/main/ets/utils/XWebHelper.ets +++ b/src/main/ets/utils/XWebHelper.ets @@ -42,6 +42,9 @@ export interface XWebParams { } export class XWebHelper { + static close() { + XWebManager.close() + } private constructor() { } diff --git a/src/main/ets/utils/XWebManager.ets b/src/main/ets/utils/XWebManager.ets index a072086..9cde610 100644 --- a/src/main/ets/utils/XWebManager.ets +++ b/src/main/ets/utils/XWebManager.ets @@ -1,8 +1,18 @@ import { ToolsHelper } from './ToolsHelper'; export class XWebManager { + private static closeCall?: () => void; + + static onClose(call: () => void) { + XWebManager.closeCall = call + } + + static close() { + XWebManager.closeCall && XWebManager.closeCall() + } + private static MapEventListener = new Map void>(); - static objs:Map = new Map() + static objs: Map = new Map() static addOnMessage(listener: (msg: string) => void): string { const id = ToolsHelper.getUuid()