HarmonyOS 鸿蒙Next WebviewController 加载的网页不显示

发布于 1周前 作者 eggper 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next WebviewController 加载的网页不显示

controller: web_webview.WebviewController = new web_webview.WebviewController()

onPageShow() {

  const params:Params = router.getParams() as Params; // 获取传递过来的参数对象

  if (params) {

    let resultJson: Params = new Params();

    resultJson.item=params.item;

    this.AdData=resultJson.item

    this.url=this.AdData.ad_url

    console.info('http opageshow:' + this.url);

    //日志 http opageshow: https://www.xxx.com/

  }

}

build() {

  Column() {

    this.Title()

    Web({src:this.url, controller: this.controller })

    // Web({ src: 'https://www.xxx.com', controller: this.controller })

    // 这样可以显示。是哪里不对?

  }

  .width(CommonConstants.FULL_WIDTH)

  .height(CommonConstants.FULL_HEIGHT)

  .backgroundColor($r('app.color.page_background'))

}

有大佬知道怎么处理吗?


更多关于HarmonyOS 鸿蒙Next WebviewController 加载的网页不显示的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复
从代码里看到渲染web是在build方法内,而获取url是在onPageShow方法内,由于build先于onPageShow执行,因此加载web时并没有获取到url,应该在  aboutToAppear方法内获取url,这样即可正确加载

更多关于HarmonyOS 鸿蒙Next WebviewController 加载的网页不显示的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


Web组件的第一个参数变量src不能通过状态变量(例如:[@State](/user/State))动态更改地址,如需更改,请通过loadUrl()重新加载。

cke_198.png

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/web-page-loading-with-web-components-V5

url: 是state 修饰的变量么?

只有state 修饰的变量, 才会自动更新UI.

在HarmonyOS鸿蒙系统中,针对Next WebviewController加载的网页不显示的问题,可能的原因及解决方案如下:

  1. URL地址问题

    • 确认加载的URL地址是否正确,是否存在拼写错误或路径错误。
    • 确认网页是否在服务器端正常访问,无404或500等错误。
  2. WebView权限

    • 检查应用是否已申请并授予了访问网络、读取存储等必要的权限。
    • 确认WebView的权限设置是否允许加载网页。
  3. WebView设置

    • 检查WebViewController的配置,确保已正确设置支持加载网页所需的参数。
    • 确认WebView的JavaScript、Cookies等设置是否开启。
  4. 系统兼容性问题

    • 确认使用的HarmonyOS版本是否支持当前WebViewController的加载方式。
    • 尝试在不同设备或模拟器上运行,以排除设备兼容性问题。
  5. 资源加载问题

    • 确认网页中的图片、CSS、JS等资源文件是否可正常访问,无跨域问题。

如果以上方法均无法解决问题,可能是WebView组件或系统本身的bug,建议联系HarmonyOS官方客服以获取进一步的帮助。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。

回到顶部