位置: 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)(布莱顿小镇介绍)

  • 新版soul怎么设置匹配年龄(新版soul的设置在哪里)

    新版soul怎么设置匹配年龄(新版soul的设置在哪里)

  • 红米k40游戏增强版屏幕材质(红米k40游戏增强版长宽)

    红米k40游戏增强版屏幕材质(红米k40游戏增强版长宽)

  • 支付宝免密支付如何设置(支付宝免密支付哪里关闭)

    支付宝免密支付如何设置(支付宝免密支付哪里关闭)

  • 微信群主退出群聊群还在吗(微信群主退出群聊后会解散群吗)

    微信群主退出群聊群还在吗(微信群主退出群聊后会解散群吗)

  • 抖音怎么艾特别人名字(抖音怎么艾特别人看)

    抖音怎么艾特别人名字(抖音怎么艾特别人看)

  • 两个小时的视频需要多少流量(两个小时的视频怎么发给微信好友)

    两个小时的视频需要多少流量(两个小时的视频怎么发给微信好友)

  • 电脑驱动怎么更新(电脑驱动怎么更新不了)

    电脑驱动怎么更新(电脑驱动怎么更新不了)

  • 淘宝过了15天怎么申请售后服务(淘宝过了15天还能退款吗)

    淘宝过了15天怎么申请售后服务(淘宝过了15天还能退款吗)

  • 流量当月有效什么意思(当月有效的流量包,下个月还有吗)

    流量当月有效什么意思(当月有效的流量包,下个月还有吗)

  • ps技术是什么意思(ps技术的重要性)

    ps技术是什么意思(ps技术的重要性)

  • i52320配什么显卡(i52320配什么显卡最好)

    i52320配什么显卡(i52320配什么显卡最好)

  • xs支持快充吗(oppoa92s支持快充吗)

    xs支持快充吗(oppoa92s支持快充吗)

  • xsmax声音小是怎么回事(iphonexs声音小)

    xsmax声音小是怎么回事(iphonexs声音小)

  • 美团买了会员能退吗(美团会员买完之后可以退款吗)

    美团买了会员能退吗(美团会员买完之后可以退款吗)

  • 微视提现实名信息不一致(微视提现怎么解除绑定身份证实名认证)

    微视提现实名信息不一致(微视提现怎么解除绑定身份证实名认证)

  • 华为哪几款手机支持otg(华为哪几款手机值得买)

    华为哪几款手机支持otg(华为哪几款手机值得买)

  • iphonexr怎么设置apn(iPhonexr怎么设置动态壁纸)

    iphonexr怎么设置apn(iPhonexr怎么设置动态壁纸)

  • vivo云相册在哪里打开(vivox21云相册在哪)

    vivo云相册在哪里打开(vivox21云相册在哪)

  • 书旗小说自动续费怎么关闭(书旗小说自动续费怎么退款)

    书旗小说自动续费怎么关闭(书旗小说自动续费怎么退款)

  • 微信连接失败是挂断吗(微信连接失败是拒绝吗)

    微信连接失败是挂断吗(微信连接失败是拒绝吗)

  • 淘宝直播助力值怎么涨(淘宝直播助力值在哪里看)

    淘宝直播助力值怎么涨(淘宝直播助力值在哪里看)

  • 华为t2281怎么和蓝牙耳机配对(华为ter-b29s怎么连接手机)

    华为t2281怎么和蓝牙耳机配对(华为ter-b29s怎么连接手机)

  • 苹果手机粘贴板在哪里(苹果手机粘贴板提示怎么关)

    苹果手机粘贴板在哪里(苹果手机粘贴板提示怎么关)

  • 软件产品即征即退条件
  • 装修行业小规模纳税人标准
  • 减免所得税会影响工资发放吗
  • 建筑公司收到劳务发票会计分录
  • 火车票丢失怎么补办
  • 小规模可以开红网吗
  • 主营业务收入开普票怎么记账
  • 公司名称房产和房地产区别
  • 个人开劳务发票是否需要交纳个人所得税呢?
  • 保函保证金怎么审计
  • 健身房税率是多少
  • 购买烟怎么做账
  • 小型微利企业所得税优惠政策
  • 应税行为扣除额计算怎么填
  • 普通股资本成本计算方法
  • 集团内部企业之间借款利息增值税
  • 工程费用包括哪几类
  • 酒店试菜费用会计分录
  • 苹果mac有hdmi
  • mac os 10.15安装教程
  • 企业给予的折扣怎么入账
  • 苹果电脑录屏的视频保存在哪里
  • Win10 Build 19044.1319(21H1)预览版发布:修复 Bug提高安全性
  • 芦荟的功效与作用治什么病
  • 公积金扣款日余额不足,影响征信
  • 企业所得税涉税风险通知书
  • 公司未经营需要做所得税年度清缴吗
  • 布里斯托尔景点
  • vue相关
  • thinkphp import
  • php运用
  • 税负太高会预警吗
  • 解决php程序运行问题
  • 开源cti
  • js实现功能
  • flask实现登录
  • php下载文件到指定目录
  • 原始凭证一般没有
  • 一般纳税人销售自己使用过的汽车
  • 员工离职补偿怎么入账
  • 服装制造行业成本占比
  • 汽车抵押贷款会上征信吗
  • 房租发票需要写备注吗
  • 开办费新会计准则
  • sql server备份数据还原不了怎么办
  • syslog ng
  • 小规模差额征税的税率是3%还是5%
  • 开具红字增值税普通发票
  • mongotemplate 分页查询
  • 已核准未登记名称我可以注册吗
  • 不动产登记机构应当履行下列职责?
  • 新领的发票怎么导入uk开票系统
  • 包装物租金如何界定
  • 车船税手续费返还时间
  • 库存商品过期了还能用吗
  • 行政事业单位拨付给企业的财政补助款用交增值税吗
  • 国有独资企业是有限责任公司吗
  • 房屋租赁违约金怎么规定
  • 母公司销售给控股子公司
  • 合伙企业是什么组织形式
  • 小规模纳税人购进税控收款机
  • 小规模纳税人是开专票还是普票
  • 分页式存储管理中页的大小是可以不相等的
  • windowsold文件夹在哪里
  • linux忘记root密码怎么修改
  • centos6.1安装
  • WIN10系统崩溃如何自救?
  • win10 build 21277
  • yarn和npm一起使用冲突
  • Unity3D游戏开发pdf
  • jquery easyui validatebox remote的使用详解
  • 在windows下搭建snort和base
  • Android Studio:adb not responding
  • android 引用第三方库
  • python读dat数据
  • 供电局发票是什么样子的
  • 如何做好税收工作推动税收事业创新发展
  • 盐城企退人员养老金调整新标准
  • 杨浦区办理健康证地点
  • 红股派息是赠送股票的意思吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设