uni-app 与webView 互相传值

uni-app 向webView 传值

在uni-app 传值有多种实现方式,主要推荐evalJS ,次要webSorcket
重点:

1.webView 要找到正确的children!如果页面中只有一个webView标签则直接可以 currentWebview.children()[0]

2.H5页面中的监听 function 必须写在全局,不要写在任何load事件中!

javascript 复制代码
  // index.vue 
let currentWebview = this.$scope.$getAppWebview()
let children = currentWebview.children()
// 这里循环获取想要传递消息的webView
let webView = children.filter((item) => item.id.indexOf('webviewId') > -1)[0]
webView.evalJS(`myCustomEvent('来自app的消息')`)
javascript 复制代码
// webView
 // html页面监听
 		function myCustomEvent(res) {
			uni.postMessage({
				data: {
					data: res,
					type: 'myCustomEvent',
				},
			})
		}
H5 向uni-app 传值

首先需要下载官方的web-view.js

javascript 复制代码
// H5页面
	window.uni.postMessage({
			data: {
				data: 'success',
				type: 'onLoad',
			},
		})
javascript 复制代码
//webView 页面
	<web-view ref="webviewRef" class="map_con" v-if="isMap" :webview-styles="webviewStyles" :fullscreen="true" :src="webViewUrl" @message="handleMessage"></web-view>
export default{
methods:{
handleMessage(e){
 console.log('来自H5的消息',e)
}
 }
}
相关推荐
jaqi.l1 小时前
uni-app vue3 小程序接入 aliyun-rtc-wx-sdk
小程序·uni-app·实时音视频
2501_9160088910 小时前
iOS混淆工具有哪些?在集成第三方 SDK 时的混淆策略与工具建议
android·ios·小程序·https·uni-app·iphone·webview
2501_9159214310 小时前
Windows 如何上架 iOS 应用?签名上传全流程 + 工具推荐
android·ios·小程序·https·uni-app·iphone·webview
雪芽蓝域zzs11 小时前
uniapp 数组的用法
前端·javascript·uni-app
大阳光男孩11 小时前
Uniapp生物识别(SOTER)
uni-app
艾普阳科技12 小时前
SnapDevelop支持uni-app开发:跨平台与原生体验的完美融合
uni-app·跨平台开发
程序员老刘14 小时前
uni-app X能成为下一个Flutter吗?
flutter·uni-app·客户端
2501_9160074715 小时前
iOS 文件管理实战指南 查看 App 数据与系统日志的完整方法
android·ios·小程序·https·uni-app·iphone·webview
2501_9151063216 小时前
iOS 内测上架流程详解:跨平台团队如何快速部署 TestFlight
android·ios·小程序·https·uni-app·iphone·webview
sunjay11719 小时前
uniapp 通用地磅称重系统手机端
uni-app