HarmonyOS 鸿蒙Next的webview注入问题

HarmonyOS 鸿蒙Next的webview注入问题 如果收到返回值为一串html代码,如何将其展示出来呢?使用webview还是?感谢大佬们相助

7 回复

更多关于HarmonyOS 鸿蒙Next的webview注入问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


你这个是一个完整的html文档,如果去掉表头怎么办?比如只给你发一个

xxxx

的html字符串,这就无能为力了,

用webview,通过loadData加载

直接用的吗?

我是用的webview

我也看了,但是抓到的包里返回信息连<html></html>都没有,直接从<p>xxxx,shhww</p>这样的字段开始的。

在HarmonyOS鸿蒙Next中,WebView组件的注入问题主要涉及到如何在WebView中执行JavaScript代码或注入自定义的JavaScript对象。鸿蒙Next的WebView组件提供了executeJs方法,允许开发者在WebView加载的页面中执行JavaScript代码。此外,可以通过addJavascriptInterface方法将Java对象注入到WebView中,使得JavaScript代码可以调用Java对象的方法。

具体实现步骤如下:

  1. 创建WebView组件并加载网页。
  2. 使用executeJs方法执行JavaScript代码。
  3. 使用addJavascriptInterface方法注入Java对象。

示例代码:

import webview from '@ohos.web.webview';

let webView = webview.WebView.create(context);
webView.loadUrl('https://example.com');

// 执行JavaScript代码
webView.executeJs('alert("Hello, HarmonyOS!");');

// 注入Java对象
class JsInterface {
  showToast(message: string) {
    console.log(message);
  }
}

webView.addJavascriptInterface(new JsInterface(), 'JsInterface');

在JavaScript代码中,可以通过JsInterface.showToast("Message from JS");调用注入的Java对象的方法。

注意:在鸿蒙Next中,WebView的相关API和实现可能与Android有所不同,开发者需参考鸿蒙官方文档进行适配。

回到顶部