HarmonyOS 鸿蒙Next Web的WebviewController绑定时机?

发布于 1周前 作者 yuanlaile 来自 鸿蒙OS

HarmonyOS 鸿蒙Next Web的WebviewController绑定时机? 在API 11 上,WebviewController 与Web 绑定成功的回调没有?

build() {
  Web ({src: 'www.huawei.com', controller: this.controller})
}

onPageShow() {
  // 调用失败,提示二者未绑定
  this.controller.registerJavascriptProxy(new JsApi(), 'jsbridge', ['call'])
}

如果加一个setTimeout, 能解决这个问题,但关键是,担心不同设备,这个timeout 不好控制 。 最好有一个回调时机, 这样, 方便去做下一步操作。


更多关于HarmonyOS 鸿蒙Next Web的WebviewController绑定时机?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

更多关于HarmonyOS 鸿蒙Next Web的WebviewController绑定时机?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


原生的Web, 一般还会封装一层

struct MyWeb {
  build() {
    Web({src: '', controller: this.controller})
  }
}

请问如何将onControllerAttached封装给MyWeb调用?

以MyWeb({}).onControllerAttached() 形式,

  • 字段名: name

  • 类型: string

  • 是否必填: 是

  • 字段名: age

  • 类型: number

  • 是否必填: 否

希望HarmonyOS能加强与其他品牌设备的兼容性,让更多人受益。

这样行不通吧,通不过api11的arkts语法检测,

HarmonyOS 鸿蒙Next Web的WebviewController绑定时机通常是在页面或组件加载完成,并且确保WebView组件已经初始化之后进行。

在HarmonyOS开发中,WebView组件用于显示网页内容。WebviewController则是用于管理WebView行为和内容的控制器。为了确保WebView能够正确显示网页并响应用户操作,开发者需要在合适的时机将WebviewController与WebView组件进行绑定。

一般来说,绑定过程包括以下几个步骤:

  1. 初始化WebView组件:在页面或组件的布局文件中定义WebView组件,并在代码中获取该组件的实例。

  2. 创建WebviewController实例:根据需求创建WebviewController的实例,并配置相关属性。

  3. 绑定WebviewController:在WebView组件初始化完成后,将WebviewController与WebView组件进行绑定。这通常是在页面或组件的onInitonPageShow等生命周期回调中进行的。

  4. 加载网页:绑定完成后,可以通过WebviewController加载指定的网页URL。

请注意,绑定时机对于确保WebView的正常运行至关重要。如果绑定过早,可能会导致WebView组件尚未初始化完成;如果绑定过晚,则可能延迟网页的显示时间。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html,

回到顶部