HarmonyOS Web对about:blank组件拦截

​H5端有个按钮点击后会有个about:blank的跳转, 在之前项目代码中,这个在WebView中没有影响。而在HarmonyOS的Web组件中会加载一个空白页面,我打算在onLoadIntercept进行拦截,但并没有截获到这地址,但在onPageBegin可以收到。(希望是不更改前端代码)

代码:​

@Builder 
buildContent() { 
  Web({ src: this.model.url, controller: this.viewModel?.webviewController }) 
    .layoutWeight(1) 
    .onPageEnd(() => { 
      this.showLoading = false 
      this.viewModel?.pageEnd() 
    }) 
    .onTitleReceive((event)=>{ 
      console.warn('web_onTitleReceive:'+event?.title) 
    }) 
    .onPageBegin((event)=>{ 
      // 这里会打印 about:blank#blocked 
      console.warn('web_onPageBegin:'+event?.url) 
    }) 
    .onUrlLoadIntercept((event)=>{ 
      console.warn('web_onUrlLoadIntercept:'+event?.data.toString()) 
      return false 
    }) 
    .onLoadIntercept((event)=>{ 
      //这里不会打印 
      console.warn('web_onLoadIntercept:'+event?.data.getRequestUrl()) 
      return false 
    }) 
    .onResourceLoad((event)=>{ 
      console.warn('web_onResourceLoad:'+event?.url) 
    }) 
    .onErrorReceive((event)=>{ 
      console.warn('web_err_receive:'+event?.error.getErrorInfo()) 
    }) 
    .onTitleReceive((event) => { 
      console.warn('web_console:' + event?.title) 
    }) 
    .onConsole((event) => { 
      console.warn('web_console:' + event?.message.getMessage()) 
      return true 
    }) 
    .javaScriptProxy({ 
      object: this.jsBridgeModel, 
      name: this.jsBridgeModel?.channelName, 
      methodList: ['postMessage'], 
      controller: this.viewModel?.webviewController 
    }) 
    .id('web') 
}
HarmonyOS
2024-11-07 10:52:55
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu
分享
微博
QQ
微信
回复
2024-11-07 17:18:13
相关问题
HarmonyOS web组件怎么拦截请求
576浏览 • 1回复 待解决
Web组件拦截页面请求响应
935浏览 • 1回复 待解决
Blank组件有什么作用,怎样使用?
412浏览 • 1回复 待解决
web组件html文件的加载
783浏览 • 1回复 待解决
HarmonyOS UI组件事件拦截处理
404浏览 • 1回复 待解决
Web拦截不到vue的router跳转
1561浏览 • 0回复 待解决
HarmonyOS Toggle组件怎么拦截
392浏览 • 1回复 待解决
有谁知道web拦截如何处理文件
870浏览 • 1回复 待解决
HarmonyOS组件如何拦截触摸事件
65浏览 • 1回复 待解决