发表于 2025-3-29 21:29:48

鸿蒙 ArkUI 中使用 WebView

前言

在鸿蒙 ArkUI 开发中,有时候我们需要加载网页内容,比如嵌入 H5 页面、显示在线文档或加载 Web 应用。本文将介绍如安在 ArkUI 中使用 WebView 组件加载网页。
创建 WebView 组件

1. 基本使用

在 ArkUI 的 @Component 组件中,可以使用 Web 组件来加载网页。比方:
import { Web } from '@ohos/web';

@Entry
@Component
struct WebViewExample {
    build() {
      Column() {
            Web({
                src: 'https://www.example.com',
                controller: new WebController(),
                onPageStarted: (url: string) => {
                  console.info(`页面开始加载: ${url}`);
                },
                onPageFinished: (url: string) => {
                  console.info(`页面加载完成: ${url}`);
                },
                onError: (error: WebError) => {
                  console.error(`加载错误: ${error.message}`);
                }
            })
            .width('100%')
            .height('100%');
      }
    }
}
2. 使用 WebController 进行交互

假如需要更深入地控制 WebView,可以使用 WebController 进行操作,比如前进、后退、刷新等。
import { WebController } from '@ohos/web';

@Entry
@Component
struct WebViewWithControls {
    private webController: WebController = new WebController();

    build() {
      Column() {
            Web({
                src: 'https://www.example.com',
                controller: this.webController
            })
            .width('100%')
            .height('80%');
            
            Row() {
                Button('后退')
                  .onClick(() => this.webController.goBack());
                Button('前进')
                  .onClick(() => this.webController.goForward());
                Button('刷新')
                  .onClick(() => this.webController.reload());
            }
      }
    }
}
3. 处理 JavaScript 交互

ArkUI 的 WebView 组件支持 JavaScript 交互,可以使用 runJavaScript 方法实行 JavaScript 代码。
this.webController.runJavaScript('document.title', (result: string) => {
    console.info(`网页标题: ${result}`);
});
结语

通过 Web 组件,我们可以方便地在 ArkUI 中嵌入 Web 页面,而且可以通过 WebController 控制网页举动。希望这篇教程能帮助你更好地明白和使用鸿蒙的 WebView 组件!
假如有任何题目或更深入的需求,接待留言讨论!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 鸿蒙 ArkUI 中使用 WebView