HarmonyOS Webkit ets之间的调用

​有一个封装的webkit。

WebComponentPage.ets

在里面定义一个​。

loadUrl(content:string): void { 
  this.url = content; 
  this.controller.refresh(); 
}

​webkit 交互使用 this.jsBridge。

其中this.jsBridge 方式引入的​。

import { jsBridge } from '../webkit/jsBridge'; 
jsBridge: jsBridge = new jsBridge(); 
 
 
Web({ src: $rawfile(this.url), controller: this.controller }) 
  .javaScriptAccess(true) 
  .fileAccess(true) 
  .imageAccess(true)//设置是否允许自动加载图片资源。 
  .javaScriptProxy({ 
    object: this.jsBridge, 
    name: "jsBridge_jzt", 
    methodList: ["createNewView","loginForPhoneAndCode","login","test"], 
    controller: this.controller 
  })

​在jsBridge.ets中。

想调用WebComponentPag.ets中的 loadUrl 传递网站参数 实现页面打开新的一页。

我的方案是 在jsBridge.ets中​。

import { WebComponentPage } from '../pages/WebComponentPage' 
mWebComponentPage mWebComponentPage = new mWebComponentPage()

​然后在调用的地方。

this.mWebComponentPage.loadUrl(xxxxxxxx)

这么调用 报错了 麻烦给出个更好的方案​。

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

​可以将mWebComponentPage定义成一个class ,然后调用其中的方法刷新页面。

例如​:

export class MWebComponentPage { 
  private static mWebComponentPage: MWebComponentPage; 
  static instance() { 
    if (!MWebComponentPage.mWebComponentPage) { 
      MWebComponentPage.mWebComponentPage = new MWebComponentPage(); 
    } 
    return MWebComponentPage.mWebComponentPage; 
  } 
  loadUrl() { 
  } 
} 
// 在某个 xx.ets中使用时声明 
MWebComponentPage : mWebComponentPage = MWebComponentPage.instance();

​或者在Web组件的回调方法中刷新页面,例如onConfirm,onPrompt,onPageEnd等等回调方法,可参考​https://developer.huawei.com/consumer/cn/doc/harmonyos-references/ts-basic-components-web-V5#onpageend

分享
微博
QQ
微信
回复
1天前
相关问题
ets文件怎么调用ts文件中定义方法
2828浏览 • 1回复 待解决
请问ets项目能调用jschart组件吗?
2342浏览 • 1回复 待解决
是否会长期支持ets调用ts代码
1638浏览 • 1回复 待解决
HarmonyOS HAR包之间路由跳转
457浏览 • 1回复 待解决
HarmonyOS ListItem之间存在空隙
198浏览 • 1回复 待解决
HarmonyOS ets文件全局引用
323浏览 • 1回复 待解决
HarmonyOS HAP之间如何进行通信?
305浏览 • 1回复 待解决
多模块之间数据互相访问
86浏览 • 1回复 待解决
ETSets没有input,如何实现输入?
8386浏览 • 2回复 待解决
浅析eTS起源和演进
487浏览 • 1回复 待解决
页面之间跳转方式怎么设置
6419浏览 • 1回复 待解决
卡片和app之间数据是如何交互
1676浏览 • 1回复 待解决
ArkTS和C++之间交互
1140浏览 • 1回复 待解决