HarmonyOSBaseLibs/src/main/ets/utils/XWebHelper.ets

59 行
1.9 KiB
Plaintext

2024-05-07 17:41:21 +08:00
import { router } from '@kit.ArkUI';
import { BusinessError } from '@kit.BasicServicesKit';
import { LogHelper } from '../../../../Index';
import { baseEncode } from '../util/base64Util';
2024-05-07 17:41:21 +08:00
import { ToolsHelper } from './ToolsHelper';
const XWebview = import('../pages/XWebview');
export interface XWebParams {
url?: string
zoomAccess?: boolean
content?: string
2024-05-07 17:41:21 +08:00
title?: string
2024-10-11 10:31:18 +08:00
showMenu?: boolean
closeTag?: string
watermarkTxt?: string
2024-05-07 17:41:21 +08:00
}
export class XWebHelper {
private constructor() {
}
2024-05-07 17:41:21 +08:00
/**
* 打开web页面,加载h5
* @param params
*/
2024-10-22 12:00:04 +08:00
public static openWeb(params: XWebParams): Promise<boolean> {
return new Promise((resolve) => {
router.pushNamedRoute({
name: 'XWebview',
params: params
}, router.RouterMode.Single).then(() => {
LogHelper.info('Succeeded in jumping to the XWebview page.')
2024-10-22 12:00:04 +08:00
resolve(true)
}).catch((err: BusinessError) => {
resolve(false)
LogHelper.error(`Failed to jump to the second page.Code is ${err.code}, message is ${err.message}`)
2024-10-22 12:00:04 +08:00
ToolsHelper.showMessage(`Failed to jump to the second page.Code is ${err.code}, message is ${err.message}`)
})
2024-05-07 17:41:21 +08:00
})
}
public static openPreview(params: XWebParams): Promise<boolean> {
params.url = `https://mdtdemo.51trust.com/preview/onlinePreview?url=${baseEncode(params.url)}&watermarkTxt=${encodeURI(params.watermarkTxt??'')}`
return new Promise((resolve) => {
router.pushNamedRoute({
name: 'XWebview',
params: params
}, router.RouterMode.Single).then(() => {
LogHelper.info('Succeeded in jumping to the XWebview page.')
resolve(true)
}).catch((err: BusinessError) => {
resolve(false)
LogHelper.error(`Failed to jump to the second page.Code is ${err.code}, message is ${err.message}`)
ToolsHelper.showMessage(`Failed to jump to the second page.Code is ${err.code}, message is ${err.message}`)
})
})
}
2024-05-07 17:41:21 +08:00
}