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)
}
 }
}
相关推荐
Rysxt_9 小时前
UniApp获取安卓系统权限教程
android·uni-app
木子啊14 小时前
ProCamera 智能水印相机解决方案 (UniApp)
数码相机·uni-app·水印相机·小程序水印
木子啊14 小时前
Uni-app跨页面通信三剑客
前端·uni-app·传参
Rysxt_1 天前
UniApp五大UI框架与uni-ui核心区别对比
uni-app·uni-ui
2501_915918411 天前
HTTPS 代理失效,启用双向认证(mTLS)的 iOS 应用网络怎么抓包调试
android·网络·ios·小程序·https·uni-app·iphone
2501_915106322 天前
混合应用(Hybrid)安全加固,不依赖源码对成品 IPA 混淆
android·安全·小程序·https·uni-app·iphone·webview
00后程序员张2 天前
无需越狱,来对 iOS 设备进行调试、管理与分析
android·ios·小程序·https·uni-app·iphone·webview
芒果大胖砸2 天前
uniapp当中如何实现长按复制功能并且能够自由选择内容
开发语言·javascript·uni-app
00后程序员张2 天前
在 iOS 上架中如何批量方便快捷管理 Bundle ID
android·ios·小程序·https·uni-app·iphone·webview
换日线°2 天前
uni-app对接腾讯即时通讯 IM
前端·uni-app