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

  • 华为gt3pro屏幕尺寸(华为gt3pro表盘)

    华为gt3pro屏幕尺寸(华为gt3pro表盘)

  • 华为p40pro虚拟键怎么设置(华为p40pro虚拟键怎么取消)

    华为p40pro虚拟键怎么设置(华为p40pro虚拟键怎么取消)

  • 华为nova5pro充电发热(华为nova5pro充电多少w)

    华为nova5pro充电发热(华为nova5pro充电多少w)

  • 京东自营是什么(京东自营是什么快递)

    京东自营是什么(京东自营是什么快递)

  • 淘宝补发货怎么查物流(淘宝补发货怎么查看)

    淘宝补发货怎么查物流(淘宝补发货怎么查看)

  • qq各种在线状态意思(qq各种在线状态搞笑)

    qq各种在线状态意思(qq各种在线状态搞笑)

  • 笔记本突然没有了WLAN选项(笔记本突然没有wifi选项列表)

    笔记本突然没有了WLAN选项(笔记本突然没有wifi选项列表)

  • 苹果手机连爱思没反应(苹果手机连爱思一直显示连接中)

    苹果手机连爱思没反应(苹果手机连爱思一直显示连接中)

  • 苹果两网和三网有什么区别(苹果两网三网是什么意思)

    苹果两网和三网有什么区别(苹果两网三网是什么意思)

  • 手机热点上网会留下记录吗(手机热点会掉线吗)

    手机热点上网会留下记录吗(手机热点会掉线吗)

  • 电脑屏幕受撞击后花屏了(电脑屏幕受撞击后漏液)

    电脑屏幕受撞击后花屏了(电脑屏幕受撞击后漏液)

  • 苹果手机无线网络打不开怎么回事(苹果手机无线网老是自动断开是怎么回事)

    苹果手机无线网络打不开怎么回事(苹果手机无线网老是自动断开是怎么回事)

  • 苹果手机下载软件后不显示(苹果手机下载软件怎么设置按两下)

    苹果手机下载软件后不显示(苹果手机下载软件怎么设置按两下)

  • b站原手机号不用了怎么办(b站原手机号不用了怎么注销)

    b站原手机号不用了怎么办(b站原手机号不用了怎么注销)

  • apple pencil美版和国行区别(pencil美版区别)

    apple pencil美版和国行区别(pencil美版区别)

  • 拼多多抢先拼单什么意思(拼多多什么叫抢先拼单)

    拼多多抢先拼单什么意思(拼多多什么叫抢先拼单)

  • ipad快捷栏设置在哪里(ipadpro快捷栏)

    ipad快捷栏设置在哪里(ipadpro快捷栏)

  • word文档怎么排版(word文档怎么排版页面)

    word文档怎么排版(word文档怎么排版页面)

  • 支付宝蓝牙如何设置(支付宝蓝牙如何关闭)

    支付宝蓝牙如何设置(支付宝蓝牙如何关闭)

  • 中国联通hd什么意思(中国联通hd有什么用)

    中国联通hd什么意思(中国联通hd有什么用)

  • 苹果6手机怎么录屏(苹果6手机怎么恢复出厂设置方法)

    苹果6手机怎么录屏(苹果6手机怎么恢复出厂设置方法)

  • shelper软件有什么作用(sheiper是什么软件)

    shelper软件有什么作用(sheiper是什么软件)

  • 手机屏幕hd1是什么(手机屏上的hd2什么意思)

    手机屏幕hd1是什么(手机屏上的hd2什么意思)

  • 鸿蒙系统支持第三方手机吗?(鸿蒙系统支持第三方相机吗)

    鸿蒙系统支持第三方手机吗?(鸿蒙系统支持第三方相机吗)

  • 电脑麦克风对方听不到声音(电脑麦克风对方听不到声音怎么办)

    电脑麦克风对方听不到声音(电脑麦克风对方听不到声音怎么办)

  • 便秘怎么办——居家自己治疗便秘最佳方法(便秘怎么办 女性)

    便秘怎么办——居家自己治疗便秘最佳方法(便秘怎么办 女性)

  • WordPress设置留言嵌套层级方法(wp留言板插件)

    WordPress设置留言嵌套层级方法(wp留言板插件)

  • 进口商品需要缴纳VAT税吗
  • 印花税会计分录怎么做
  • 水利建设基金申报期限
  • 房产公司结转收入条件
  • 保理公司会计核算讲解
  • 电子商务公司开业活动流程
  • 典当业销售的死当物品是否交增值税
  • 资金周转率计算公式期初占用资金
  • 贴现票据种类
  • 个人转租房屋的法律规定
  • 土地增值税清算的条件
  • 存货的计税价格是什么
  • 生产企业出口货物收不到款怎么处理
  • 存货跌价准备转销账务处理
  • 吸收合并后被合并的公司
  • 公司帐上欠了股东很多钱有何税务风险?
  • 固定资产清理税金如何处理
  • 资产转让税费哪方承担
  • 公司员工补充医疗保险方案
  • 收到代收款怎么做分录
  • 招待费进项税额转出在申报表
  • windows10如何开热点
  • 企业收到农产品普通发票
  • php4位数的随机字符
  • thinkphp怎么部署
  • win11发布时间正式确定
  • $(window).resize
  • 收到银行退回的会计分录
  • 免税有那些
  • php 调试工具
  • 应收款余额在借方什么意思
  • 贝尔·菲戈尔
  • 解决的英文
  • 施工企业会计核算特点有哪些
  • 微信小程序全栈开发实战
  • 子公司提取盈余公积 合并抵消
  • 企业对外投资资产的成本可以税前扣除吗
  • 公司之间借款利息需要开票吗
  • 小规模纳税人的增值税计入成本吗
  • 个人以不动产投资成立一人有限公司
  • 如何检查文件是否有毒
  • mongodb $lookup
  • 停工损失会计科目
  • 差额冲账法
  • 小规模纳税人是个体户吗
  • mysql 重复记录查询
  • 租赁中承租人的会计分录
  • 小规模免征增值税的会计处理办法
  • 买的仪器
  • 发票开具流程是?
  • 增值税进项税额抵扣期限最新
  • 融资性售后回租承租方出售资产为什么不缴纳增值税
  • 收到对方公司的货款怎么记账
  • 公司前期装修费属于开办费吗
  • 股东往来款算投资款吗
  • 房地产影响投资和消费,事关民生和发展
  • 采购库存商品的分录
  • mysql5.5解压版安装教程
  • 用户账户限制
  • ubuntu怎么禁用nouveau
  • -mtime +3详解 linux
  • linux 如何
  • input submit、button和回车键提交数据详解
  • cocos2d面试题
  • Ext中下拉列表ComboBox组件store数据格式用法介绍
  • div +css
  • 计算机图形学中点画圆法
  • Jqprint实现页面打印
  • javascript常用语法
  • css中清除浮动的方法
  • 啥叫七个不得
  • shell bash sh
  • 猫的喵喵
  • html加载条代码
  • 在文件中偏移量为
  • javascript构造函数可继承父类的构造函数
  • javascript面向对象编程
  • 中国有多少人2022
  • 福州台江区怎么去
  • 尤溪特产春节礼品
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设