关于WebView JS代码最早注入时机的咨询

​我们需要在自行封装的WebView中注入JS代码,注入时机需要尽量早,请问WebView JS代码注入的最早时机是什么时候?

注入的JS代码涉及window上对象的添加以及基于document节点的事件发送,目前在WebVIew的onPageEnd阶段执行注入,但部分H5接入方在页面加载完成前就有调用我们注入的JS代码的需求,具体代码如下:​

extendtypescript 
let javaScript = `window.umapStartParams = ${this.params.startParamsString};`; 
javaScript += 'window.UMJSBridge = { callHandler(name, params, callback) { window.JSBridge.call(name, params, callback) } };'; 
javaScript += 'document.dispatchEvent(new Event("UMJSBridgeReady"));'; 
const configMap = UMWebManager.getConfigMap(); 
if (!configMap.has('doubleTrack') || configMap.get('doubleTrack') === true) { 
  javaScript += `window.AlipayJSBridge = { call(name, params, callback) { window.JSBridge.call(name, params, callback)}, startupParams: ${this.params.startParamsString} };`; 
  javaScript += 'document.dispatchEvent(new Event("AlipayJSBridgeReady"));'; 
} 
this.controller.runJavaScript(javaScript);
HarmonyOS
2024-11-06 09:02:24
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

​使用javaScriptOnDocumentStart试试,将JavaScript脚本注入到Web组件中,当指定页面或者文档开始加载时,该脚本将在其来源与scriptRules匹配的任何页面中执行。参考文档:​https://developer.huawei.com/consumer/cn/doc/harmonyos-references/ts-basic-components-web-V5#javascriptondocumentstart11

分享
微博
QQ
微信
回复
2024-11-06 15:49:49
相关问题
HarmonyOS 如何在比较早时机注入js
48浏览 • 1回复 待解决
HarmonyOS webviewJS 注入异常
367浏览 • 1回复 待解决
HarmonyOS web组件注入JS代码
112浏览 • 1回复 待解决
HarmonyOS WebView注入方法
112浏览 • 1回复 待解决
HarmonyOS web组件如何注入js文件
226浏览 • 1回复 待解决
HarmonyOS web iframe 注入.js 问题
707浏览 • 1回复 待解决
HarmonyOS javaScriptProxy注入js不成功
173浏览 • 1回复 待解决
HarmonyOS Web组件注入js怎么传递对象
638浏览 • 1回复 待解决
JS代码require到沙箱JS文件
191浏览 • 1回复 待解决
HarmonyOS 关于照片压缩咨询
156浏览 • 1回复 待解决
HarmonyOS 关于vp问题咨询
378浏览 • 1回复 待解决