提交 897d91cc 编写于 作者: Z zgit2021 提交者: zhangjing

webview ArkTs modify

Signed-off-by: Nzgit2021 <zhaowenqiang14@huawei.com>
Change-Id: I1ae1ccbff2c18905e260d6cd3462bce988c8dbf5
上级 392c56de
...@@ -89,13 +89,14 @@ postMessageEvent(message: WebMessage): void ...@@ -89,13 +89,14 @@ postMessageEvent(message: WebMessage): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
ports: web_webview.WebMessagePort[]; ports: web_webview.WebMessagePort[] = [];
build() { build() {
Column() { Column() {
...@@ -106,7 +107,8 @@ struct WebComponent { ...@@ -106,7 +107,8 @@ struct WebComponent {
this.controller.postMessage('__init_port__', [this.ports[0]], '*'); this.controller.postMessage('__init_port__', [this.ports[0]], '*');
this.ports[1].postMessageEvent("post message from ets to html5"); this.ports[1].postMessageEvent("post message from ets to html5");
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -141,13 +143,14 @@ onMessageEvent(callback: (result: WebMessage) => void): void ...@@ -141,13 +143,14 @@ onMessageEvent(callback: (result: WebMessage) => void): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
ports: web_webview.WebMessagePort[]; ports: web_webview.WebMessagePort[] = [];
build() { build() {
Column() { Column() {
...@@ -169,7 +172,8 @@ struct WebComponent { ...@@ -169,7 +172,8 @@ struct WebComponent {
} }
}) })
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -234,18 +238,20 @@ onMessageEventExt(callback: (result: WebMessageExt) => void): void ...@@ -234,18 +238,20 @@ onMessageEventExt(callback: (result: WebMessageExt) => void): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
// 应用与网页互发消息的示例:使用"init_web_messageport"的通道,通过端口0在应用侧接受网页发送的消息,通过端口1在网页侧接受应用发送的消息。 // 应用与网页互发消息的示例:使用"init_web_messageport"的通道,通过端口0在应用侧接受网页发送的消息,通过端口1在网页侧接受应用发送的消息。
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
ports: web_webview.WebMessagePort[] = null; ports: web_webview.WebMessagePort[] = [];
nativePort: web_webview.WebMessagePort = null; nativePort: web_webview.WebMessagePort | null = null;
@State msg1:string = ""; @State msg1: string = "";
@State msg2:string = ""; @State msg2: string = "";
message: web_webview.WebMessageExt = new web_webview.WebMessageExt(); message: web_webview.WebMessageExt = new web_webview.WebMessageExt();
build() { build() {
Column() { Column() {
Text(this.msg1).fontSize(16) Text(this.msg1).fontSize(16)
...@@ -261,12 +267,13 @@ struct WebComponent { ...@@ -261,12 +267,13 @@ struct WebComponent {
} }
} }
catch (error) { catch (error) {
console.log("In ArkTS side send message catch error:" + error.code + ", msg:" + error.message); let e: business_error.BusinessError = resError as business_error.BusinessError;
console.log("In ArkTS side send message catch error:" + e.code + ", msg:" + e.message);
} }
}) })
Web({ src: $rawfile('index.html'), controller: this.controller }) Web({ src: $rawfile('index.html'), controller: this.controller })
.onPageEnd((e)=>{ .onPageEnd((e) => {
console.log("In ArkTS side message onPageEnd init mesaage channel"); console.log("In ArkTS side message onPageEnd init mesaage channel");
// 1. 创建消息端口 // 1. 创建消息端口
this.ports = this.controller.createWebMessagePorts(true); this.ports = this.controller.createWebMessagePorts(true);
...@@ -278,7 +285,7 @@ struct WebComponent { ...@@ -278,7 +285,7 @@ struct WebComponent {
this.nativePort.onMessageEventExt((result) => { this.nativePort.onMessageEventExt((result) => {
console.log("In ArkTS side got message"); console.log("In ArkTS side got message");
try { try {
var type = result.getType(); let type = result.getType();
console.log("In ArkTS side getType:" + type); console.log("In ArkTS side getType:" + type);
switch (type) { switch (type) {
case web_webview.WebMessageType.STRING: { case web_webview.WebMessageType.STRING: {
...@@ -318,7 +325,8 @@ struct WebComponent { ...@@ -318,7 +325,8 @@ struct WebComponent {
} }
} }
catch (resError) { catch (resError) {
console.log(`log error code: ${resError.code}, Message: ${resError.message}`); let e: business_error.BusinessError = resError as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}); });
}) })
...@@ -424,13 +432,14 @@ close(): void ...@@ -424,13 +432,14 @@ close(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
msgPort: web_webview.WebMessagePort[] = null; msgPort: web_webview.WebMessagePort[] = [];
build() { build() {
Column() { Column() {
...@@ -441,7 +450,8 @@ struct WebComponent { ...@@ -441,7 +450,8 @@ struct WebComponent {
this.msgPort = this.controller.createWebMessagePorts(); this.msgPort = this.controller.createWebMessagePorts();
console.log("createWebMessagePorts size:" + this.msgPort.length) console.log("createWebMessagePorts size:" + this.msgPort.length)
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Button('close') Button('close')
...@@ -453,7 +463,8 @@ struct WebComponent { ...@@ -453,7 +463,8 @@ struct WebComponent {
console.error("msgPort is null, Please initialize first"); console.error("msgPort is null, Please initialize first");
} }
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -482,9 +493,11 @@ static initializeWebEngine(): void ...@@ -482,9 +493,11 @@ static initializeWebEngine(): void
// xxx.ts // xxx.ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
import Want from '@ohos.app.ability.Want';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
onCreate(want, launchParam) { onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
console.log("EntryAbility onCreate") console.log("EntryAbility onCreate")
web_webview.WebviewController.initializeWebEngine() web_webview.WebviewController.initializeWebEngine()
console.log("EntryAbility onCreate done") console.log("EntryAbility onCreate done")
...@@ -513,17 +526,21 @@ static setHttpDns(secureDnsMode:SecureDnsMode, secureDnsConfig:string): void ...@@ -513,17 +526,21 @@ static setHttpDns(secureDnsMode:SecureDnsMode, secureDnsConfig:string): void
// xxx.ts // xxx.ts
import UIAbility from '@ohos.app.ability.UIAbility'; import UIAbility from '@ohos.app.ability.UIAbility';
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
import Want from '@ohos.app.ability.Want';
import business_error from '@ohos.base';
export default class EntryAbility extends UIAbility { export default class EntryAbility extends UIAbility {
onCreate(want, launchParam) { onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
console.log("EntryAbility onCreate") console.log("EntryAbility onCreate")
try { try {
web_webview.WebviewController.setHttpDns(web_webview.SecureDnsMode.AUTO, "https://example1.test") web_webview.WebviewController.setHttpDns(web_webview.SecureDnsMode.AUTO, "https://example1.test")
} catch(error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
globalThis.abilityWant = want AppStorage.set("abilityWant", want);
console.log("EntryAbility onCreate done") console.log("EntryAbility onCreate done")
} }
} }
...@@ -548,17 +565,19 @@ static setWebDebuggingAccess(webDebuggingAccess: boolean): void ...@@ -548,17 +565,19 @@ static setWebDebuggingAccess(webDebuggingAccess: boolean): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
aboutToAppear():void { aboutToAppear(): void {
try { try {
web_webview.WebviewController.setWebDebuggingAccess(true); web_webview.WebviewController.setWebDebuggingAccess(true);
} catch(error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
} }
...@@ -599,7 +618,8 @@ loadUrl(url: string | Resource, headers?: Array\<WebHeader>): void ...@@ -599,7 +618,8 @@ loadUrl(url: string | Resource, headers?: Array\<WebHeader>): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -614,7 +634,8 @@ struct WebComponent { ...@@ -614,7 +634,8 @@ struct WebComponent {
// 需要加载的URL是string类型。 // 需要加载的URL是string类型。
this.controller.loadUrl('www.example.com'); this.controller.loadUrl('www.example.com');
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -625,7 +646,8 @@ struct WebComponent { ...@@ -625,7 +646,8 @@ struct WebComponent {
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -638,9 +660,10 @@ struct WebComponent { ...@@ -638,9 +660,10 @@ struct WebComponent {
.onClick(() => { .onClick(() => {
try { try {
// 带参数headers。 // 带参数headers。
this.controller.loadUrl('www.example.com', [{headerKey: "headerKey", headerValue: "headerValue"}]); this.controller.loadUrl('www.example.com', [{ headerKey: "headerKey", headerValue: "headerValue" }]);
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -654,7 +677,8 @@ struct WebComponent { ...@@ -654,7 +677,8 @@ struct WebComponent {
1.$rawfile方式。 1.$rawfile方式。
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -669,7 +693,8 @@ struct WebComponent { ...@@ -669,7 +693,8 @@ struct WebComponent {
// 通过$rawfile加载本地资源文件。 // 通过$rawfile加载本地资源文件。
this.controller.loadUrl($rawfile('index.html')); this.controller.loadUrl($rawfile('index.html'));
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -681,7 +706,8 @@ struct WebComponent { ...@@ -681,7 +706,8 @@ struct WebComponent {
2.resources协议。 2.resources协议。
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -696,7 +722,8 @@ struct WebComponent { ...@@ -696,7 +722,8 @@ struct WebComponent {
// 通过resource协议加载本地资源文件。 // 通过resource协议加载本地资源文件。
this.controller.loadUrl("resource://rawfile/index.html"); this.controller.loadUrl("resource://rawfile/index.html");
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -754,7 +781,8 @@ loadData(data: string, mimeType: string, encoding: string, baseUrl?: string, his ...@@ -754,7 +781,8 @@ loadData(data: string, mimeType: string, encoding: string, baseUrl?: string, his
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -772,7 +800,8 @@ struct WebComponent { ...@@ -772,7 +800,8 @@ struct WebComponent {
"UTF-8" "UTF-8"
); );
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -784,7 +813,8 @@ struct WebComponent { ...@@ -784,7 +813,8 @@ struct WebComponent {
加载本地资源 加载本地资源
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -799,7 +829,8 @@ struct WebComponent { ...@@ -799,7 +829,8 @@ struct WebComponent {
try { try {
this.controller.loadData(this.updataContent, "text/html", "UTF-8", " ", " "); this.controller.loadData(this.updataContent, "text/html", "UTF-8", " ", " ");
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -834,7 +865,8 @@ accessForward(): boolean ...@@ -834,7 +865,8 @@ accessForward(): boolean
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -849,7 +881,8 @@ struct WebComponent { ...@@ -849,7 +881,8 @@ struct WebComponent {
let result = this.controller.accessForward(); let result = this.controller.accessForward();
console.log('result:' + result); console.log('result:' + result);
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -878,7 +911,8 @@ forward(): void ...@@ -878,7 +911,8 @@ forward(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -892,7 +926,8 @@ struct WebComponent { ...@@ -892,7 +926,8 @@ struct WebComponent {
try { try {
this.controller.forward(); this.controller.forward();
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -927,7 +962,8 @@ accessBackward(): boolean ...@@ -927,7 +962,8 @@ accessBackward(): boolean
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -942,7 +978,8 @@ struct WebComponent { ...@@ -942,7 +978,8 @@ struct WebComponent {
let result = this.controller.accessBackward(); let result = this.controller.accessBackward();
console.log('result:' + result); console.log('result:' + result);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -971,7 +1008,8 @@ backward(): void ...@@ -971,7 +1008,8 @@ backward(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -985,7 +1023,8 @@ struct WebComponent { ...@@ -985,7 +1023,8 @@ struct WebComponent {
try { try {
this.controller.backward(); this.controller.backward();
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1014,7 +1053,8 @@ onActive(): void ...@@ -1014,7 +1053,8 @@ onActive(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1028,7 +1068,8 @@ struct WebComponent { ...@@ -1028,7 +1068,8 @@ struct WebComponent {
try { try {
this.controller.onActive(); this.controller.onActive();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1057,7 +1098,8 @@ onInactive(): void ...@@ -1057,7 +1098,8 @@ onInactive(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1071,7 +1113,8 @@ struct WebComponent { ...@@ -1071,7 +1113,8 @@ struct WebComponent {
try { try {
this.controller.onInactive(); this.controller.onInactive();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1099,7 +1142,8 @@ refresh(): void ...@@ -1099,7 +1142,8 @@ refresh(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1113,7 +1157,8 @@ struct WebComponent { ...@@ -1113,7 +1157,8 @@ struct WebComponent {
try { try {
this.controller.refresh(); this.controller.refresh();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1154,7 +1199,8 @@ accessStep(step: number): boolean ...@@ -1154,7 +1199,8 @@ accessStep(step: number): boolean
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1170,7 +1216,8 @@ struct WebComponent { ...@@ -1170,7 +1216,8 @@ struct WebComponent {
let result = this.controller.accessStep(this.steps); let result = this.controller.accessStep(this.steps);
console.log('result:' + result); console.log('result:' + result);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1199,7 +1246,8 @@ clearHistory(): void ...@@ -1199,7 +1246,8 @@ clearHistory(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1213,7 +1261,8 @@ struct WebComponent { ...@@ -1213,7 +1261,8 @@ struct WebComponent {
try { try {
this.controller.clearHistory(); this.controller.clearHistory();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1248,7 +1297,8 @@ getHitTest(): WebHitTestType ...@@ -1248,7 +1297,8 @@ getHitTest(): WebHitTestType
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1263,7 +1313,8 @@ struct WebComponent { ...@@ -1263,7 +1313,8 @@ struct WebComponent {
let hitTestType = this.controller.getHitTest(); let hitTestType = this.controller.getHitTest();
console.log("hitTestType: " + hitTestType); console.log("hitTestType: " + hitTestType);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1300,20 +1351,27 @@ registerJavaScriptProxy(object: object, name: string, methodList: Array\<string> ...@@ -1300,20 +1351,27 @@ registerJavaScriptProxy(object: object, name: string, methodList: Array\<string>
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
class testObj {
constructor() {
}
test(): string {
return "ArkUI Web Component";
}
toString(): void {
console.log('Web Component toString');
}
}
@Entry @Entry
@Component @Component
struct Index { struct Index {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
testObj = { @State testObjtest: testObj = new testObj();
test: (data) => {
return "ArkUI Web Component";
},
toString: () => {
console.log('Web Component toString');
}
}
build() { build() {
Column() { Column() {
...@@ -1322,15 +1380,17 @@ struct Index { ...@@ -1322,15 +1380,17 @@ struct Index {
try { try {
this.controller.refresh(); this.controller.refresh();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Button('Register JavaScript To Window') Button('Register JavaScript To Window')
.onClick(() => { .onClick(() => {
try { try {
this.controller.registerJavaScriptProxy(this.testObj, "objName", ["test", "toString"]); this.controller.registerJavaScriptProxy(this.testObjtest, "objName", ["test", "toString"]);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: $rawfile('index.html'), controller: this.controller }) Web({ src: $rawfile('index.html'), controller: this.controller })
...@@ -1386,7 +1446,8 @@ runJavaScript(script: string, callback : AsyncCallback\<string>): void ...@@ -1386,7 +1446,8 @@ runJavaScript(script: string, callback : AsyncCallback\<string>): void
**示例:** **示例:**
```ts ```ts
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1413,9 +1474,12 @@ struct WebComponent { ...@@ -1413,9 +1474,12 @@ struct WebComponent {
console.info(`The test() return value is: ${result}`) console.info(`The test() return value is: ${result}`)
} }
}); });
if (e) {
console.info('url: ', e.url); console.info('url: ', e.url);
}
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
} }
...@@ -1473,7 +1537,8 @@ runJavaScript(script: string): Promise\<string> ...@@ -1473,7 +1537,8 @@ runJavaScript(script: string): Promise\<string>
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1487,15 +1552,18 @@ struct WebComponent { ...@@ -1487,15 +1552,18 @@ struct WebComponent {
.onPageEnd(e => { .onPageEnd(e => {
try { try {
this.controller.runJavaScript('test()') this.controller.runJavaScript('test()')
.then(function (result) { .then((result) => {
console.log('result: ' + result); console.log('result: ' + result);
}) })
.catch(function (error) { .catch((error: business_error.BusinessError) => {
console.error("error: " + error); console.error("error: " + error);
}) })
if (e) {
console.info('url: ', e.url); console.info('url: ', e.url);
}
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
} }
...@@ -1547,7 +1615,8 @@ runJavaScriptExt(script: string, callback : AsyncCallback\<JsMessageExt>): void ...@@ -1547,7 +1615,8 @@ runJavaScriptExt(script: string, callback : AsyncCallback\<JsMessageExt>): void
**示例:** **示例:**
```ts ```ts
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1573,7 +1642,7 @@ struct WebComponent { ...@@ -1573,7 +1642,7 @@ struct WebComponent {
} }
if (result) { if (result) {
try { try {
var type = result.getType(); let type = result.getType();
switch (type) { switch (type) {
case web_webview.JsMessageType.STRING: { case web_webview.JsMessageType.STRING: {
this.msg1 = "result type:" + typeof (result.getString()); this.msg1 = "result type:" + typeof (result.getString());
...@@ -1607,13 +1676,17 @@ struct WebComponent { ...@@ -1607,13 +1676,17 @@ struct WebComponent {
} }
} }
catch (resError) { catch (resError) {
console.log(`log error code: ${resError.code}, Message: ${resError.message}`); let e: business_error.BusinessError = resError as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
} }
}); });
if (e) {
console.info('url: ', e.url); console.info('url: ', e.url);
}
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
} }
...@@ -1669,7 +1742,8 @@ runJavaScriptExt(script: string): Promise\<JsMessageExt> ...@@ -1669,7 +1742,8 @@ runJavaScriptExt(script: string): Promise\<JsMessageExt>
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1690,7 +1764,7 @@ struct WebComponent { ...@@ -1690,7 +1764,7 @@ struct WebComponent {
this.controller.runJavaScriptExt('test()') this.controller.runJavaScriptExt('test()')
.then((result) => { .then((result) => {
try { try {
var type = result.getType(); let type = result.getType();
switch (type) { switch (type) {
case web_webview.JsMessageType.STRING: { case web_webview.JsMessageType.STRING: {
this.msg1 = "result type:" + typeof (result.getString()); this.msg1 = "result type:" + typeof (result.getString());
...@@ -1724,10 +1798,11 @@ struct WebComponent { ...@@ -1724,10 +1798,11 @@ struct WebComponent {
} }
} }
catch (resError) { catch (resError) {
console.log(`log error code: ${resError.code}, Message: ${resError.message}`); let e: business_error.BusinessError = resError as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
.catch(function (error) { .catch((error: business_error.BusinessError) => {
console.error("error: " + error); console.error("error: " + error);
}) })
}) })
...@@ -1779,7 +1854,8 @@ deleteJavaScriptRegister(name: string): void ...@@ -1779,7 +1854,8 @@ deleteJavaScriptRegister(name: string): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1794,7 +1870,8 @@ struct WebComponent { ...@@ -1794,7 +1870,8 @@ struct WebComponent {
try { try {
this.controller.deleteJavaScriptRegister(this.name); this.controller.deleteJavaScriptRegister(this.name);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1830,7 +1907,8 @@ zoom(factor: number): void ...@@ -1830,7 +1907,8 @@ zoom(factor: number): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1845,7 +1923,8 @@ struct WebComponent { ...@@ -1845,7 +1923,8 @@ struct WebComponent {
try { try {
this.controller.zoom(this.factor); this.controller.zoom(this.factor);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1880,7 +1959,8 @@ searchAllAsync(searchString: string): void ...@@ -1880,7 +1959,8 @@ searchAllAsync(searchString: string): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1895,13 +1975,16 @@ struct WebComponent { ...@@ -1895,13 +1975,16 @@ struct WebComponent {
try { try {
this.controller.searchAllAsync(this.searchString); this.controller.searchAllAsync(this.searchString);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
.onSearchResultReceive(ret => { .onSearchResultReceive(ret => {
if (ret) {
console.log("on search result receive:" + "[cur]" + ret.activeMatchOrdinal + console.log("on search result receive:" + "[cur]" + ret.activeMatchOrdinal +
"[total]" + ret.numberOfMatches + "[isDone]" + ret.isDoneCounting); "[total]" + ret.numberOfMatches + "[isDone]" + ret.isDoneCounting);
}
}) })
} }
} }
...@@ -1928,7 +2011,8 @@ clearMatches(): void ...@@ -1928,7 +2011,8 @@ clearMatches(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1942,7 +2026,8 @@ struct WebComponent { ...@@ -1942,7 +2026,8 @@ struct WebComponent {
try { try {
this.controller.clearMatches(); this.controller.clearMatches();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -1977,7 +2062,8 @@ searchNext(forward: boolean): void ...@@ -1977,7 +2062,8 @@ searchNext(forward: boolean): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -1991,7 +2077,8 @@ struct WebComponent { ...@@ -1991,7 +2077,8 @@ struct WebComponent {
try { try {
this.controller.searchNext(true); this.controller.searchNext(true);
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2020,7 +2107,8 @@ clearSslCache(): void ...@@ -2020,7 +2107,8 @@ clearSslCache(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2034,7 +2122,8 @@ struct WebComponent { ...@@ -2034,7 +2122,8 @@ struct WebComponent {
try { try {
this.controller.clearSslCache(); this.controller.clearSslCache();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2063,7 +2152,8 @@ clearClientAuthenticationCache(): void ...@@ -2063,7 +2152,8 @@ clearClientAuthenticationCache(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2077,7 +2167,8 @@ struct WebComponent { ...@@ -2077,7 +2167,8 @@ struct WebComponent {
try { try {
this.controller.clearClientAuthenticationCache(); this.controller.clearClientAuthenticationCache();
} catch (error) { } catch (error) {
console.error(`Errorcode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2118,13 +2209,14 @@ createWebMessagePorts(isExtentionType?: boolean): Array\<WebMessagePort> ...@@ -2118,13 +2209,14 @@ createWebMessagePorts(isExtentionType?: boolean): Array\<WebMessagePort>
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview' import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
ports: web_webview.WebMessagePort[]; ports: web_webview.WebMessagePort[] = [];
build() { build() {
Column() { Column() {
...@@ -2134,7 +2226,8 @@ struct WebComponent { ...@@ -2134,7 +2226,8 @@ struct WebComponent {
this.ports = this.controller.createWebMessagePorts(); this.ports = this.controller.createWebMessagePorts();
console.log("createWebMessagePorts size:" + this.ports.length) console.log("createWebMessagePorts size:" + this.ports.length)
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2172,12 +2265,13 @@ postMessage(name: string, ports: Array\<WebMessagePort>, uri: string): void ...@@ -2172,12 +2265,13 @@ postMessage(name: string, ports: Array\<WebMessagePort>, uri: string): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
struct WebComponent { struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController(); controller: web_webview.WebviewController = new web_webview.WebviewController();
ports: web_webview.WebMessagePort[]; ports: web_webview.WebMessagePort[] = [];
@State sendFromEts: string = 'Send this message from ets to HTML'; @State sendFromEts: string = 'Send this message from ets to HTML';
@State receivedFromHtml: string = 'Display received message send from HTML'; @State receivedFromHtml: string = 'Display received message send from HTML';
...@@ -2186,7 +2280,7 @@ struct WebComponent { ...@@ -2186,7 +2280,7 @@ struct WebComponent {
// 展示接收到的来自HTML的内容 // 展示接收到的来自HTML的内容
Text(this.receivedFromHtml) Text(this.receivedFromHtml)
// 输入框的内容发送到html // 输入框的内容发送到html
TextInput({placeholder: 'Send this message from ets to HTML'}) TextInput({ placeholder: 'Send this message from ets to HTML' })
.onChange((value: string) => { .onChange((value: string) => {
this.sendFromEts = value; this.sendFromEts = value;
}) })
...@@ -2217,7 +2311,8 @@ struct WebComponent { ...@@ -2217,7 +2311,8 @@ struct WebComponent {
// 3、将另一个消息端口(如端口0)发送到HTML侧,由HTML侧保存并使用。 // 3、将另一个消息端口(如端口0)发送到HTML侧,由HTML侧保存并使用。
this.controller.postMessage('__init_port__', [this.ports[0]], '*'); this.controller.postMessage('__init_port__', [this.ports[0]], '*');
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
...@@ -2231,7 +2326,8 @@ struct WebComponent { ...@@ -2231,7 +2326,8 @@ struct WebComponent {
console.error(`ports is null, Please initialize first`); console.error(`ports is null, Please initialize first`);
} }
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: $rawfile('index.html'), controller: this.controller }) Web({ src: $rawfile('index.html'), controller: this.controller })
...@@ -2324,6 +2420,7 @@ requestFocus(): void ...@@ -2324,6 +2420,7 @@ requestFocus(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2337,7 +2434,8 @@ struct WebComponent { ...@@ -2337,7 +2434,8 @@ struct WebComponent {
try { try {
this.controller.requestFocus(); this.controller.requestFocus();
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}); });
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2368,6 +2466,7 @@ zoomIn(): void ...@@ -2368,6 +2466,7 @@ zoomIn(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2381,7 +2480,8 @@ struct WebComponent { ...@@ -2381,7 +2480,8 @@ struct WebComponent {
try { try {
this.controller.zoomIn(); this.controller.zoomIn();
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2412,6 +2512,7 @@ zoomOut(): void ...@@ -2412,6 +2512,7 @@ zoomOut(): void
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2425,7 +2526,8 @@ struct WebComponent { ...@@ -2425,7 +2526,8 @@ struct WebComponent {
try { try {
this.controller.zoomOut(); this.controller.zoomOut();
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2461,6 +2563,7 @@ getHitTestValue(): HitTestValue ...@@ -2461,6 +2563,7 @@ getHitTestValue(): HitTestValue
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2476,7 +2579,8 @@ struct WebComponent { ...@@ -2476,7 +2579,8 @@ struct WebComponent {
console.log("hitType: " + hitValue.type); console.log("hitType: " + hitValue.type);
console.log("extra: " + hitValue.extra); console.log("extra: " + hitValue.extra);
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -2512,6 +2616,7 @@ getWebId(): number ...@@ -2512,6 +2616,7 @@ getWebId(): number
```ts ```ts
// xxx.ets // xxx.ets
import web_webview from '@ohos.web.webview'; import web_webview from '@ohos.web.webview';
import business_error from '@ohos.base';
@Entry @Entry
@Component @Component
...@@ -2526,7 +2631,8 @@ struct WebComponent { ...@@ -2526,7 +2631,8 @@ struct WebComponent {
let id = this.controller.getWebId(); let id = this.controller.getWebId();
console.log("id: " + id); console.log("id: " + id);
} catch (error) { } catch (error) {
console.error(`ErrorCode: ${error.code}, Message: ${error.message}`); let e: business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
} }
}) })
Web({ src: 'www.example.com', controller: this.controller }) Web({ src: 'www.example.com', controller: this.controller })
...@@ -3744,12 +3850,14 @@ struct WebComponent { ...@@ -3744,12 +3850,14 @@ struct WebComponent {
.onClick(() => { .onClick(() => {
try { try {
let state = this.controller.serializeWebState(); let state = this.controller.serializeWebState();
let path:string = AppStorage.get("cacheDir"); let path:string | undefined = AppStorage.get("cacheDir");
if (path) {
path += '/WebState'; path += '/WebState';
// 以同步方法打开文件。 // 以同步方法打开文件。
let file = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); let file = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
fs.writeSync(file.fd, state.buffer); fs.writeSync(file.fd, state.buffer);
fs.closeSync(file.fd); fs.closeSync(file.fd);
}
} catch (error) { } catch (error) {
let e:business_error.BusinessError = error as business_error.BusinessError; let e:business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`); console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
...@@ -3819,7 +3927,8 @@ struct WebComponent { ...@@ -3819,7 +3927,8 @@ struct WebComponent {
Button('RestoreWebState') Button('RestoreWebState')
.onClick(() => { .onClick(() => {
try { try {
let path:string = AppStorage.get("cacheDir"); let path:string | undefined = AppStorage.get("cacheDir");
if (path) {
path += '/WebState'; path += '/WebState';
// 以同步方法打开文件。 // 以同步方法打开文件。
let file = fs.openSync(path, fs.OpenMode.READ_WRITE); let file = fs.openSync(path, fs.OpenMode.READ_WRITE);
...@@ -3835,6 +3944,7 @@ struct WebComponent { ...@@ -3835,6 +3944,7 @@ struct WebComponent {
fs.closeSync(file); fs.closeSync(file);
} }
}); });
}
} catch (error) { } catch (error) {
let e:business_error.BusinessError = error as business_error.BusinessError; let e:business_error.BusinessError = error as business_error.BusinessError;
console.error(`ErrorCode: ${e.code}, Message: ${e.message}`); console.error(`ErrorCode: ${e.code}, Message: ${e.message}`);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册