关于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 webviewJS 注入异常
203浏览 • 1回复 待解决
HarmonyOS web iframe 注入.js 问题
525浏览 • 1回复 待解决
HarmonyOS Web组件注入js怎么传递对象
495浏览 • 1回复 待解决
关于数据缓存问题咨询
291浏览 • 1回复 待解决
HarmonyOS 关于router.back问题咨询
460浏览 • 1回复 待解决
HarmonyOS 关于页面埋点方案咨询
452浏览 • 1回复 待解决
HarmonyOS 关于native aki库功能咨询
125浏览 • 1回复 待解决
HarmonyOS 关于GIF图片播放功能咨询
38浏览 • 1回复 待解决
关于系统定位缓存问题咨询
671浏览 • 1回复 待解决
创建JS项目如何使用webview
4702浏览 • 1回复 待解决
HarmonyOS js调用webview方法
481浏览 • 1回复 待解决