位置: IT常识 - 正文

微信小程序web-view与H5之间交互(含支付)(微信小程序webview支付)

编辑:rootadmin
微信小程序web-view与H5之间交互(含支付) 第一章 了解web-view与H5的交互(含支付)文章目录第一章 了解web-view与H5的交互(含支付)前言一、web-view是什么?二、使用步骤三、业务场景1.小程序带参数跳转链接,H5应用获取参数2.H5应用涉及跳转小程序功能,小程序嵌套后功能失效 (原网页环境是微信浏览器,嵌入后为小程序内置环境,api方法不兼容)3.H5应用涉及微信JSAPI支付,小程序嵌套后功能失效(小程序内置环境不支持JSAPI方式支付,仅支持小程序支付,需后端配合增加小程序支付,H5通过jssdk携带支付参数跳转小程序页面,小程序内接收参数做支付,并且小程序内置支付api可以知道支付状态,那么就能完成整个支付业务)总结前言

推荐整理分享微信小程序web-view与H5之间交互(含支付)(微信小程序webview支付),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信小程序web-view打不开ip地址,微信小程序webview支付,微信小程序webview通信,微信小程序web-view拦截请求,微信小程序webview使用,微信小程序web-view,微信小程序webview通信,微信小程序webview支付,内容如对您有帮助,希望把文章链接给更多的朋友!

uniapp开发小程序的过程中主、分包有大小限制,随着业务的增加,使用web-view加载H5的方式,往往纯加载并不能满足业务需求,这个时候就得了解小程序与H5的交互。

提示:以下是本篇文章正文内容,下面案例可供参考

一、web-view是什么?微信小程序web-view与H5之间交互(含支付)(微信小程序webview支付)

web-view 是微信小程序内置的浏览器组件,用来加载网络html。

二、使用步骤<template><web-view src="https://www.xxx.html"></web-view></template>

注意:

小程序web-view会自动铺满全屏,不支持修改组件宽高。小程序加载路径仅支持网络网页,不支持本地的html页面。三、业务场景1.小程序带参数跳转链接,H5应用获取参数<!-- 小程序参数拼接在地址上--><!-- 小程序--><template><web-view src="https://www.xxx.html?id=1&from=xcx"></web-view></template>

解决:小程序地址路径?传参 — H5onLoad函数接收

// H5// H5获取拼接的url参数<script>export default {onLoad(option){console.log(option) // {id: 1, from: 'xcx'}}};</script><script>console.log(window.location.search) // ?id=1&from=xcx</script>2.H5应用涉及跳转小程序功能,小程序嵌套后功能失效 (原网页环境是微信浏览器,嵌入后为小程序内置环境,api方法不兼容)

解决:H5触发事件并发送内容 — web-view @message事件监听处理

<!-- message事件监听H5触发的消息--><!-- 小程序--><template><web-view src="https://www.xxx.html" @message="onMessage"></web-view></template><script>export default {data() {return {};},methods: {onMessage(event) {console.log('接收到消息:' + JSON.stringify(event.detail.data));// 跳转小程序方法uni.navigateToMiniProgram({appId: data.appId,path: data.path,extraData: data.extraData});}}};</script>// H5// H5触发事件并发送内容document.addEventListener('click', function() {uni.postMessage({data: {appId: '',path: '',extraData: ''}});})3.H5应用涉及微信JSAPI支付,小程序嵌套后功能失效(小程序内置环境不支持JSAPI方式支付,仅支持小程序支付,需后端配合增加小程序支付,H5通过jssdk携带支付参数跳转小程序页面,小程序内接收参数做支付,并且小程序内置支付api可以知道支付状态,那么就能完成整个支付业务)

解决:H5调用支付下单接口 — 携带参数跳转到小程序里去完成支付 — 支付后携带参数回跳H5 — H5接收参数判断支付是否成功

<!-- 小程序--><template><web-view :src="url"></web-view></template><script>export default {data() {return {url: ''};},onLoad(option){//有支付订单进行支付if (option.idNo) {const item = JSON.parse(decodeURIComponent(option.data));this.requestPayment(item);}},methods: {requestPayment(item) {console.log(item);uni.requestPayment({provider: 'wxpay',signType: item.signType || 'MD5',timeStamp: item.timeStamp,nonceStr: item.nonceStr,package: item.package,paySign: item.paySign,success: res => {// 回跳地址携带支付状态参数,便于H5判断// 支付成功this.url += '&payStatus=success';},fail: err => {// 支付失败this.url += '&payStatus=fail';}});}}};</script>// H5<script>onLoad(option){if (option.payStatus == ‘success’) {// 支付成功........}else {// 支付失败........}},methods: {// H5通过jssdk携带支付参数跳转小程序页面let path = `/pages/webview_pay/webview_pay`;(注意需和小程序内跳转链接页面路径一致)........// 接口返回的支付参数let navigateToData = {timeStamp: response.data.result.timeStamp,nonceStr: response.data.result.nonceStr,package: response.data.result.package,paySign: response.data.result.sign};let uri = window.location.href.split('#')[0]; //获取当前url;path += `?idNo=${response.data.result.orderNo}&&data=${encodeURIComponent(JSON.stringify(navigateToData))}&&uri=${uri}`;//通过JSSDK的api使小程序跳转到指定的小程序页面jweixin.miniProgram.getEnv(function(res) {if (res.miniprogram) {jweixin.miniProgram.redirectTo({url: path});} else {uni.showToast({title: 'error',icon: 'none'});}});}</script>总结

本文简单介绍了小程序web-view与H5的一些交互,若有其他更好的交互方式,欢迎评论区补充。

未完待续...

本文链接地址:https://www.jiuchutong.com/zhishi/293016.html 转载请保留说明!

上一篇:挂在树上的小鸟舍 (© Westend61/Getty Images)(挂在树上的小鸟怎么画)

下一篇:布莱顿码头,阿德莱德布莱顿 (© Darryl Leach/Alamy)(布莱顿小镇介绍)

  • 移动5g套餐价目表(移动5s)(移动5g套餐价目表图片)

    移动5g套餐价目表(移动5s)(移动5g套餐价目表图片)

  • 淘宝显示用户信息开关在哪里(淘宝显示用户信用双零什么意思)

    淘宝显示用户信息开关在哪里(淘宝显示用户信用双零什么意思)

  • 智能手机与可穿戴移动设备中采用什么功能进行移动支付(智能手机可以连接电脑吗)

    智能手机与可穿戴移动设备中采用什么功能进行移动支付(智能手机可以连接电脑吗)

  • mp4格式是音频还是视频(mp4是音频文件还是视频文件)

    mp4格式是音频还是视频(mp4是音频文件还是视频文件)

  • 华为手机镜头玻璃碎了(华为手机镜头玻璃碎了保修吗)

    华为手机镜头玻璃碎了(华为手机镜头玻璃碎了保修吗)

  • 华为mate30反向充电怎么用(华为mate30反向充电位置)

    华为mate30反向充电怎么用(华为mate30反向充电位置)

  • 终止幻灯片按什么键(如要终止幻灯片放映)

    终止幻灯片按什么键(如要终止幻灯片放映)

  • b站会员购定金能退吗(b站会员购定金怎么退款)

    b站会员购定金能退吗(b站会员购定金怎么退款)

  • 数据漫游能提高网速吗(数据漫游会增加费用吗)

    数据漫游能提高网速吗(数据漫游会增加费用吗)

  • 小天才z1s有打字功能吗(小天才z1s手表在哪儿设置打字)

    小天才z1s有打字功能吗(小天才z1s手表在哪儿设置打字)

  • 华为畅享10是屏幕指纹嘛(华为畅享10屏幕材质)

    华为畅享10是屏幕指纹嘛(华为畅享10屏幕材质)

  • cpu后面带h是什么意思(cpu后面的h是什么)

    cpu后面带h是什么意思(cpu后面的h是什么)

  • VR是什么意思(vr是什么意思呀)

    VR是什么意思(vr是什么意思呀)

  • 第四代计算机不具有的特点是什么(第四代计算机是什么计算机)

    第四代计算机不具有的特点是什么(第四代计算机是什么计算机)

  • 论文脚注怎么加小圆圈(论文脚注怎么加跟参考文献的区别)

    论文脚注怎么加小圆圈(论文脚注怎么加跟参考文献的区别)

  • 怎样删掉抖音小视频(怎么删除抖音中的小程序)

    怎样删掉抖音小视频(怎么删除抖音中的小程序)

  • 淘宝卖家怎样拒绝发货(淘宝卖家怎么拒收别人的消息)

    淘宝卖家怎样拒绝发货(淘宝卖家怎么拒收别人的消息)

  • 手机的私密空间在哪(手机的私密空间怎么打开)

    手机的私密空间在哪(手机的私密空间怎么打开)

  • 数据的预处理包括什么(数据的预处理包括的三个过程)

    数据的预处理包括什么(数据的预处理包括的三个过程)

  • 手机隐私设置在哪里(手机隐私设置在哪)

    手机隐私设置在哪里(手机隐私设置在哪)

  • 58人脸认证可以取消吗(58要人脸识别)

    58人脸认证可以取消吗(58要人脸识别)

  • 小米手机72小时密码怎么关闭(小米手机72小时输一次密码能不能关闭)

    小米手机72小时密码怎么关闭(小米手机72小时输一次密码能不能关闭)

  • 红米mee7s是什么型号(红米mee7是什么型号手机)

    红米mee7s是什么型号(红米mee7是什么型号手机)

  • 苹果怎么拒接陌生电话(苹果怎么拒接陌生来电和短信)

    苹果怎么拒接陌生电话(苹果怎么拒接陌生来电和短信)

  • 华为鸿蒙系统怎么取消华为账号授权? 鸿蒙取消授权的应用技巧(华为鸿蒙系统怎么降级版本)

    华为鸿蒙系统怎么取消华为账号授权? 鸿蒙取消授权的应用技巧(华为鸿蒙系统怎么降级版本)

  • 土豆发芽了能吃吗?慎吃发了芽的土豆(土豆发芽了能吃吗有没有毒)

    土豆发芽了能吃吗?慎吃发了芽的土豆(土豆发芽了能吃吗有没有毒)

  • 帝国CMS商城系统如何实现在线支付后发送订单邮件提醒功能(帝国cms使用手册)

    帝国CMS商城系统如何实现在线支付后发送订单邮件提醒功能(帝国cms使用手册)

  • 企业所得税的纳税人发生年度亏损的时间
  • 应交税费转出未交增值税借贷方表示什么
  • 注册500万公司实缴多少钱
  • 记账凭证红字冲销
  • 红字信息表撤销失败B80095
  • 小规模开专票的条件
  • 培训产生的费用
  • 取得预收租金应如何申报缴税
  • 小规模增值税的三个附加税计算公式是什么
  • 认缴出资怎么填财务报表
  • 开办费抵扣多少企业所得税
  • 汇算清缴退税可以不退吗
  • 土地增值税预征管理办法
  • 工程成本控制方法
  • 企业取得的财政补贴收入是否缴纳增值税
  • 收到抵物广告费的会计处理怎么做?
  • 生产企业报关单金额大于发票金额
  • 货物运输政策
  • 发票已入账跨年可以红冲重开吗
  • 小规模纳税人开具增值税专用发票
  • 母公司向全资子公司划转土地
  • 发生坏账计入
  • w10如何删除微软拼音
  • 出售固定资产增值税怎么处理
  • 期间费用的会计科目
  • 售后租回交易形成融资租赁会计处理
  • 递延所得税资产和负债怎么理解
  • 购销合同印花税计算方法
  • 购买股票的会计科目
  • conda配置虚拟环境
  • 网上报税有哪些
  • php操作mysql数据库的扩展有哪三个
  • idea可以编写vue吗
  • 企业的营业税金及附加
  • c语言中fopen函数的头文件
  • 关于酒店采购
  • 出口会计分录该怎么写
  • 机动车发票哪几联 做帐
  • 资金结存属于什么会计科目
  • dedecms官网
  • MongoDB的Master-Slave主从模式配置及主从复制要点解析
  • 财务报表如何看
  • 购买商品优惠怎么做账
  • 电子承兑汇票的最长期限
  • 暂存的凭证是怎么做的
  • 欠款收不回来了会计分录
  • 销项税额和进项税额月底怎么结转
  • 计提所得税后再结转本年利润吗
  • 印花税申报成功怎么撤回
  • 报关期限是如何规定的
  • 自行开具增值税专用发票怎么开
  • 工资标准表
  • 原材料出库怎么做分录
  • 双方投资合作项目合法吗
  • 税费的审计
  • 债权投资的交易费用计入成本还是利息调整
  • 外经证预缴税款必须去外地交税吗
  • 银行承兑汇票到期无力支付计入什么科目
  • 出口退税企业如何更正申报增值税
  • 航天信息开票软件客服
  • 赠送购物券的会计处理
  • 会计账薄按其外形特征不同可以分为
  • netdrive mac
  • windows无法启动怎么解决
  • win8自启动在哪儿设置
  • windows怎么拨号
  • win10预览版和正式版区别
  • win8图标放桌面
  • python的导入
  • JavaScript中常用的数据类型有
  • axios使用jsonp
  • 税务备案超过15天
  • 管道运输合同需不需要缴纳印花税
  • 如何查询票据真伪信息
  • 消费税征税环节
  • 深圳市国家税务局电话
  • 社保卡手机缴费怎么交不了
  • 保险公司优惠的款项什么时候退款
  • 中国企业银行可以转账吗
  • 叶青和奚卫华
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设