a***@fuweex.com
a***@fuweex.com
  • 发布:2025-02-18 13:42
  • 更新:2025-02-19 09:23
  • 阅读:66

鸿蒙webview通信evalJS,不支持this.$scope.$getAppWebview().children()[0],需要使用使用uni.createWebviewContext

分类:鸿蒙Next

APP往webview通过evalJS注入方法时
鸿蒙不支持this.$scope.$getAppWebview().children()[0] ,使用uni.createWebviewContext

//template  
<web-view id="webviewId" src="xxxxxx"></web-view>  
//javascript  

// #ifdef APP-HARMONY  
this.currentWebview = uni.createWebviewContext('webviewId', this);  
// #endif  
// #ifdef APP-PLUS  
this.currentWebview = this.$scope.$getAppWebview().children()[0];  
// #endif  
let token = uni.getStorageSync('token');  
let tenant = uni.getStorageSync('tenantCode');  
// 准备要传递的数据  
let dataToPass = JSON.stringify({  
    token: token  
});  
this.currentWebview.evalJS(`uniappReceiveData('${JSON.stringify({ token: token,tenant: tenant})}')`)
0 关注 分享

要回复文章请先登录注册

1***@qq.com

1***@qq.com

顺便问下,h5如何接收app端的方法呢
2025-02-19 09:23
Adlaw

Adlaw

uni.createWebviewContext('webview', this).evalJs() 鸿蒙平台要用这种方法来获取并发送JS
2025-02-18 14:27