微信小程序与webview H5交互(内嵌H5跳转原生页面)

article/2025/11/10 15:22:30

在开发中,使用web-view组件内嵌H5页面是非常常见的,但很多人不知道webview内嵌H5如何与原生小程序 交互。下面介绍下实现微信小程序与webview H5交互的方法。

web-view功能描述

承载网页的容器。会自动铺满整个小程序页面,个人类型的小程序暂不支持使用。

客户端 6.7.2 版本开始,navigationStyle: custom 对 web-view 组件无效

在这里插入图片描述

web-view 内嵌 H5 给原生小程序传参

方式一、使用postMessage

在web-view组件上有一个属性“bindmessage”,官方是这么介绍的:

网页向小程序 postMessage 时,会在特定时机(小程序后退、组件销毁、分享)触发并收到消息。e.detail = { data },data是多次 postMessage 的参数组成的数组

在 web-view 组件上绑定 “message”事件

在 H5 中 触发 message 事件即可在小程序中接收 H5传递的数据

例子:

小程序 /pages/test/test.wxml :

<web-view src="" bindmessage="receiveMessage"></web-view>

小程序 /pages/test/test.js :

receiveMessage(e){console.log(e.detail)//接收H5传过来的数据
}

H5:

<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
<script>
wx.miniProgram.postMessage({ data: {foo: 'bar'} })
</script>

利用postMessage可以实现小程序与H5之间通讯,但只在小程序后退、组件销毁、分享时触发,所以在一些情况可能不满足开发需求

方式二、利用页面跳转带参

引用 jweixin JSSDK,调用微信 wx.miniProgram API 。

接口名说明最低版本
wx.miniProgram.navigateTo参数与小程序接口一致1.6.4
wx.miniProgram.navigateBack参数与小程序接口一致1.6.4
wx.miniProgram.switchTab参数与小程序接口一致1.6.5
wx.miniProgram.reLaunch参数与小程序接口一致1.6.5
wx.miniProgram.redirectTo参数与小程序接口一致1.6.5
wx.miniProgram.postMessage向小程序发送消息,会在特定时机(小程序后退、组件销毁、分享)触发组件的 message 事件1.7.1
wx.miniProgram.getEnv获取当前环境1.7.1

例如现在有一个场景: H5为一个列表页面,点击列表子项时跳转到原生小程序的详情页

H5:

<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
<script>
function handleClick(e){let id = e.target.dataset.idlet url = `/pages/detail/detail?id=${id}`;wx.miniProgram.navigateTo({url,});
}
</script>

小程序 /pages/detail/detail.js:

onLoad: function (options) {console.log(options.id)//接收H5传过来的数据
}

原生小程序 给 web-view内嵌H5 传参

原生小程序 给 web-view内嵌H5 传参就很简单了,原生小程序直接通过修改 web-view 的src属性就行了

'xxx.com?arg=123'

h5页面获取url上的参数,这种方式会使页面重新加载,如果不想引起页面加载可以通过修改hash

'xxx.com#123'

H5页面监听hash值变化:

window.onhashchange=function(){alert('hash值改变')console.log(window.location.hash)//获取当前hash值
}

http://chatgpt.dhexx.cn/article/4BUqIxgh.shtml

相关文章

Python:下载安装包

示例1&#xff1a;安装jieba包 1.全自动安装包 WindowsR&#xff1a;输入cmd pip install jieba / pip3 install jieba 由于下载总出现错误&#xff0c;故选择其他方法进行安装包的下载。 2.半自动安装 1&#xff09;下载安装包的官方网站&#xff1a;jieba PyPI 网盘下…

Python和PyCharm的下载和安装(详细教程)

一.Python的下载和安装 1.点击下方链接进入Python官网&#xff1a; https://www.python.org/downloads 2.根据自己的需求选择python的版本&#xff0c;点击【Download】 3.等待下载完成 4.双击进行安装&#xff0c;勾选添加环境&#xff0c;点击自定义安装 5.勾选后点击【Ne…

Python的下载与安装

一.下载 1.直接下载&#xff1a;有安装包的话可直接下载并安装 2.官网下载&#xff1a;在浏览器的导航栏输入python.org后回车进入官网 &#xff08;官网界面&#xff09; &#xff08;1&#xff09;点击Downloads后选择相应的系统下载python&#xff0c;Windows系统选择Win…

电脑上如何安装python

第一步&#xff1a;下载Python安装包 在Python的官网 www.python.org 中找到最新版本的Python安装包&#xff0c;点击进行下载&#xff0c;请注意&#xff0c;当你的电脑是32位的机器&#xff0c;请选择32位的安装包&#xff0c;如果是64位的&#xff0c;请选择64位的安装包&a…

Python的下载和安装教程

今天学习python以及pycharm的下载和安装&#xff0c;参考了好几个博客&#xff0c;在此总结一下安装过程。 注意&#xff1a;在这里说明一下&#xff0c;如果要用pycharm进行python的开发&#xff0c;是要分别下载pycharm和python的&#xff0c;不要只安装pycharm就结束了。 …

怎么在python官网下载python,python的官方网址是什么

python的安装包怎么下载 下载python安装包的方法&#xff1a;1、访问python的官网地址“”2、点击Download下面的Latest后面的python版本3、在跳转后的页面用鼠标滑到最下面&#xff0c;显示的就是python的所有系统的安装包了更多Python知识&#xff0c;请关注&#xff1a;Pyt…

怎么在python官网下载python,官网python怎么下载安装

python怎么安装 在Python官网下载Python安装包&#xff0c;双击打开Python软件。勾选add Python 3.8 to PATH&#xff0c;点击install Now。 安装完成后&#xff0c;点击Close.打开电脑命令提示符&#xff0c;输入Python&#xff0c;按回车键运行。出现版本号&#xff0c;就说…

python官网下载安装教程

1.进入官网&#xff0c;选择自己所需要的版本 官网地址&#xff1a;https://www.python.org/downloads/ 2.选择对应系统的安装包下载 3.下载完成&#xff0c;点击安装包进行安装、配置 不建议安装在C盘 4.确认python是否安装成功 cmd输入命令python&#xff0c;返回安装的pyt…

python官方下载安装教程,python官方下载网站

python下载安装教程 python下载安装教程&#xff1a;自定义安装目录&#xff0c;点击install进行安装&#xff0c;打开cmd窗口&#xff0c;输入python&#xff0c;显示python的版本&#xff0c;安装成功。 Python语言更适合初学者&#xff0c;Python语言并不会让初学者感到晦…

python电脑上怎么下载-Python下载和安装图文教程[超详细]

如今python语言非常火&#xff0c;很多小伙伴都开学习python&#xff0c;但是很多小伙伴在安装python的时候遇到问题&#xff0c;下面我们就想详细介绍介绍python下载和安装的方法。 1、 打开python下载链接https://www.python.org/downloads/&#xff0c;点击自己想要的版本。…

Python的下载安装教程(很详细,初学者也能懂)

文章目录 Python的下载安装配置环境变量可提供远程搭建运行服务点击获取项目源码 Python的下载安装 1.进入Python的官网&#xff0c; http://www.python.org/download/ &#xff0c;这里以下载Windows的Python为例 2.选择下载的版本是3.9.9&#xff0c;双击下载&#xff0c;注…

python软件下载安装教程,如何下载和安装python

python下载安装教程 首先打开浏览器&#xff0c;百度搜索【python】。出现搜索结果后&#xff0c;再进入下图所示的官网中。进入官网后&#xff0c;鼠标移至【download】再选择自己的系统。进入下载页面后&#xff0c;再选择python的版本。 下载完成后&#xff0c;再点击打开…

初入Python —— Python下载

Python是一个较为高级的编程语言。那要怎么使用它呢&#xff1f; 所以&#xff0c;我们要知道如何下载Python。 目录 前言 一、Python下载 1.下载方法&#xff08;一&#xff09; 2.下载方法&#xff08;2&#xff09; 3.下载方法&#xff08;3&#xff09;——Windows版本…

2021:Python的下载安装教程(很详细,初学者也能懂)

文章目录 Python的下载安装配置环境变量喜欢技术的&#xff0c;一起进群交流学习吧&#xff01;&#xff01;&#xff01; Python的下载安装 1.进入Python的官网&#xff0c; http://www.python.org/download/ &#xff0c;这里以下载Windows的Python为例 2.选择下载的版本是…

Python的下载安装(手把手教学)

程序员养成日记第一天&#xff1a;从自主下载安装软件开始~~~ 目录 windows版本 MacOS版本 windows版本 1、进入Python官网 https://www.python.org/downloads/ 2、点击Downloads中的Windows版本 3、进入Windows版本&#xff0c;进行Python版本的挑选&#xff0c;建议P…

BI数据分析从业者从零开始学习财务知识?有哪些入门书籍推荐

商业智能BI项目的特点是面向全行业、全领域的&#xff0c;并且大部分的商业智能BI分析是直接支撑到集团高层管理决策。支撑管理决策的经营分析又离不开财务分析&#xff0c;所以基本上每个商业智能BI项目都会涉及到财务分析相关的内容。 但财务又是一个非常专业的领域&#xf…

理财入门:财务报表(简单介绍,后续入门系列文章写完后,会写实践文章在详细介绍)

文章目录 前言财务报表是什么&#xff0c;有什么用&#xff1f;上市公司的财报通过财报读懂企业的18个步骤系统的投资技能顺序 前言 选出优质生钱资产类型股票是离不开财报分析这项技能的&#xff0c;财报不仅和投资有关&#xff0c;还能分析出家庭财务危机在哪。财报最重要的…

vscode json文件中写注释

1.在vscode 打开一个json文件&#xff0c;点击底部的 JSON with Comments 选择语言模式 2.搜索 com 注意&#xff1a;上述方法重启vscode可能会失效&#xff0c;在设置中添加如下配置 // 配置文件类型识别"files.associations": {"*.js": "javascrip…

postman中为JSON数据写注释信息

索引 问题描述解决方案添加方法处理效果 预处理函数代码 问题描述 在使用postman进行接口测试的时候&#xff0c;总是会碰到一个问题&#xff0c;请求参数如果是 json 格式时是不支持注释的&#xff0c;会将注释也一并发送出去&#xff0c;后端接受后可能会导致数据不正确。 …

Java注解@JsonFormat

文章目录 一、JsonFormat是什么&#xff1f;二、JsonFormat参数讲解 一、JsonFormat是什么&#xff1f; 通常日期格式都是以时间戳的形式存放在数据库里&#xff0c;当前端页面通过接口查询时&#xff0c;我们会将一个对象的某些属性查出来返回给页面。 类似在实体类上加上改注…