小程序发劵插件sendCoupon的使用

发劵插件官方文档

我目前的需求是,商家自定义满减劵、优惠劵,点击添加按钮可以添加到自己的卡包。
一开始后台了我发劵插件send-coupon文档,我想要用插件,又占空间,感觉又麻烦,不是有个wx.addCard嘛。非常自信的选择的wx.addCard这个api,做了一大堆前缀工作。申请一个卡劵权限公众号、申请开发平台,将小程序和公众好绑定在同一个开放平台,主体还要一致。根据网上的操作流程,全部做完后,后台一调接口。哦豁,报错。

“errmsg”: “暂不支持本账号创建优惠券,具体可访问mp.weixin.qq.com,关注卡券下线公告通知。12月10日0点起,商户可正常申请开通“微信卡券”功能,申请开通后,“优惠券”功能将不再支持使用。新开通卡券功能的商户使用“会员卡”、“礼品卡”或“票证”等能力不受影响;如商户有在微信生态内发放优惠券的需求,可使用微信支付优惠券:商家券或支付券(即代金券)。如需了解更多,可查阅微信支付优惠券产品功能介绍。 hint: [wUrrRA06809061]”

一上班,脑子就发懵。仔细看了下后台反馈的问题,又是一顿搜找人问,最后发现关于满减劵、优惠劵这一块,在wx.addCard这个api上,已经下架了,用不了。网上关于这方个api都是2021年之前的,之前是可以用,反正我现在用不了。
咋整,又是咔咔一段猛搜,最后发现,只能用一开始的微信支付发劵插件send-coupon。兜兜转转一周多,又回到了起点。
下面就是关于这个插件使用踩得的一些小坑。

  1. 当前小程序需要开通了微信支付。
  2. app.json引入插件包。并添加到开发工具
    "plugins": {"sendCoupon": {"version": "latest","provider": "wxf3f436ba9bd4be7b"},},
  1. 当前页面引入组件使用
   "usingComponents": {"send-coupon": "plugin://sendCoupon/send-coupon"},
  1. wxml使用
<van-popup show="{{isAddCard}}" position="bottom" custom-style="height: 30%;" round bind:close="onClose"><send-coupon bindsendcoupon="wxGetCoupon" binduserconfirm="redirectuser" send_coupon_params="{{send_coupon_params}}" sign="{{signtureResult.sign}}" send_coupon_merchant="{{signtureResult.merchant}}"><view class="addCardModel" ><view class="cardToast">提示</view><view>确认领取此优惠劵?</view><view class="cardBtn" bind:tap="onAddCard">确定领取</view></view></send-coupon>
</van-popup>
  1. js逻辑使用
    /**自定义领取 */onAddCard(){let {goodsList,signtureResult} = this.datalet send_coupon_params = [{out_request_no: goodsList.outRequestNo ,stock_id: goodsList.wxStockId,create_coupon_merchant: signtureResult.merchant,}]this.setData({send_coupon_params,isAddCard:false})},/**微信领取 */wxGetCoupon(params){console.log(params);if (params.detail.errcode == 'OK') {if (params.detail.send_coupon_result[0].code == 'SUCCESS') {//领取成功调用接口,告诉后台已成功领取优惠劵,方便后台返回一个"是否添加优惠劵到卡包"的状态this._updateWxCouponCode(params.detail.send_coupon_result[0].coupon_code)wx.showToast({title: '领取成功',icon:'none'})}else if(params.detail.send_coupon_result[0].code == 'DUPREQUEST'){wx.showToast({title: '已添加到卡包',})}else{console.log('领取失败');this.onClose()}}else{this.onClose()wx.showToast({title: '领取失败',icon:'none'})}},/** 点击"我知道了" 回调事件 */redirectuser(res){wx.showToast({title: '卡包已添加成功',icon:'none'})this.setData({isAddCard:false})},

有一个注意点是send_coupon_params的参数格式和内容。还有一个是确定领取的onAddCard一定不要写成catchtap方法,不然冒泡不到插件的自定义事件,触发不了bindsendcoupon的事件。我就是下意识写catchtap方法,没注意,卡这里半天。其实这个send-coupon里面的自定义内容就算不写方法,只写个文本内容领取,也可以触发bindsendcoupon的方法。但是一定要人为点击了才能触发。

前端小程序这边如果没绕弯、没跳坑里就还好。因为插件的参数基本都是后台返回的,需要后台仔细看接口文档,小程序调接口用就是。还有需要注意的参数是sign,这个参数貌似也很坑,放个以前的人填的坑。发券插件至验签流程

操作成功界面演示
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/646328.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HCIA-HarmonyOS设备开发认证-1.HarmonyOS简介

目录 前言目标一、HarmonyOS简介1.1、初识HarmonyOS1.2、HarmonyOS典型应用场景 二、HarmonyOS架构与安全2.1、HarmonyOS架构2.1.1 内核层2.1.2 系统服务层2.1.3 框架层2.1.4 应用层 2.2、HarmonyOS安全 3、HarmonyOS关键特性4、HarmonyOS生态5、思考题坚持就有收获 前言 本章…

Qt基础-窗体状态栏右下角的三角框如何去掉

Qt窗体状态栏右下角默认是有的三角框&#xff0c;在项目设计时不需要&#xff0c;如何去掉呢&#xff1f; 默认的窗体界面如下 选中状态栏&#xff0c;修改属性SizeGripEnabled勾选去掉 再次运行&#xff0c;三角框去掉了

java steam 的使用

说steam 前看下kotlin的一个写法如果用java怎么写 fun main() {// 创建一个列表val fruits listOf("Apple", "Banana", "Cherry", "Date", "Elderberry")// 使用 Sequence 进行过滤和映射操作val uppercaseFruitLengths …

怎么用图片生成二维码?扫描二维码看图片怎么制作?

现在将多张图片放到二维码中&#xff0c;通过扫码的方式预览是现在很常见的一种方式&#xff0c;那么如何生成图片、照片的二维码呢&#xff1f;对于图片二维码制作感兴趣的小伙伴&#xff0c;可以跟着小编来学习下面的制作技巧&#xff0c;借助网上的二维码生成器工具的功能&a…

基于LLaMA Factory,单卡3小时训练专属大模型 Agent

大家好&#xff0c;今天给大家带来一篇 Agent 微调实战文章 Agent&#xff08;智能体&#xff09;是当今 LLM&#xff08;大模型&#xff09;应用的热门话题 [1]&#xff0c;通过任务分解&#xff08;task planning&#xff09;、工具调用&#xff08;tool using&#xff09;和…

还在纠结怎么选随身WiFi的,看看这个!随身WiFi靠谱榜第一名推荐!哪个随身WiFi最好用

你是不是还在头疼如何挑选一个靠谱好用的随身WiFi呢&#xff1f;市场上的随身WiFi产品五花八门&#xff0c;每次购买随身WiFi都会被坑&#xff0c;差点就失去购买的信心了~别灰心&#xff0c;一篇文章教你如何挑选一个靠谱好用的随身WiFi&#xff01; 一、5大购买原则&#xff…

蓝桥杯备战——1.点亮LED灯

1.解析原理图 由上图可以看到8个共阳LED灯接到了573输出口&#xff0c;而573输入接到单片机P0口上。当573 LE脚输入高电平时&#xff0c;输出随输入变化&#xff0c;当LE为低电平时&#xff0c;输出锁存。 由上图可以看到Y4C接到了或非门74HC02的输出端&#xff0c;而输入端为…

HCIA——27E-mall、MIME;POP3、IMAP的选择,解答

学习目标&#xff1a; 计算机网络 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议&#xff0c;了解典型网络设备的组成和特点&#xff0c;理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行…

DAY22xss2

远程调用xss平台网站需要在意是http还是https协议 cookie的利用 1.抓包利用 2.特定浏览器活软件 这个浏览器的使用教程 点进去之后再点击这个 然后我们开始 利用cookie cookie有几个值我们就添加几个 3.浏览器插件 遇到的突发情况 例如空白 404 这个时候我们要有种思…

SpringBoot,TDengine时序数据库,实现物联网,车联网大批量数据更新最佳实践。

简介 TDengine 是一款专为物联网、工业互联网等场景设计并优化的大数据平台&#xff0c;它能安全高效地将大量设备、数据采集器每天产生的高达 TB 甚至 PB 级的数据进行汇聚、存储、分析和分发&#xff0c;对业务运行状态进行实时监测、预警&#xff0c;提供实时的商业洞察。其…

tp5中使用ueditor编辑器保存文本到数据库后编辑时数据回显显示html标签问题解决办法

数据表中保存的数据为带html标签的源码&#xff0c;如图&#xff1a; 编辑器页面需要的内容&#xff1a; <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"> <html> <head><…

网络通信课程总结(小飞有点东西)

27集 局域网通信&#xff1a;用MAC地址 跨局域网通信&#xff1a;用IP地址&#xff08;MAC地址的作用只是让我们找到网关&#xff09; 又因为arp技术&#xff0c;可以通过MAC地址找到IP地址&#xff0c;所以我们可以通过IP地址定位到全世界任意一台计算机。 28集 在数据链路…

255:vue+openlayers 加载tomtom地图(多种形式)

第255个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+openlayers中添加tomtom地图,这里包含了多种形式,诸如中文标记、英文标记、白天地图、晚上地图、卫星影像图,高山海拔地形图等。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果 文章目录 示…

爬虫是什么 怎么预防

爬虫是一种自动化程序&#xff0c;用于从网页或网站中提取数据。它们通过模拟人类用户的行为&#xff0c;发送HTTP请求并解析响应&#xff0c;以获取所需的信息。 爬虫可以用于各种合法用途&#xff0c;如搜索引擎索引、数据采集和监测等。然而&#xff0c;有些爬虫可能是恶意的…

2. figure 常见属性

2. figure 常见属性 一 figsize二 dpi三 facecolor四 edgecolor五 frameon 数据可视化是数据分析中不可或缺的一环&#xff0c;而Matplotlib作为Python中最流行的绘图库之一&#xff0c;扮演着重要的角色。在Matplotlib中&#xff0c;matplotlib.figure.Figure对象是构建图形的…

3d模型素材下载选择哪个网站比较好?

3d模型素材下载选择哪个网站比较好?需要在选择3D模型素材下载网站时&#xff0c;考虑以下几个方面&#xff1a; 1、网站的专业性和知名度&#xff1a;选择知名的、专业的网站可以提高获取到优质模型素材的概率&#xff0c;并且能够保证模型的品质和准确性。 2、模型的种类和质…

unity学习笔记----游戏练习06

一、豌豆射手的子弹控制 创建脚本单独控制子弹的运动 用transform来控制移动 void Update() { transform.Translate(Vector3.right * speed * Time.deltaTime); } 创建一个控制子弹速度的方法&#xff0c;方便速度的控制 private void SetSpeed(float spee…

Qt顶部圆角窗体

Qt&#xff1a;实现顶层窗体圆角_qt 圆角窗口弹窗-CSDN博客 setWindowFlags(Qt::FramelessWindowHint);QBitmap bmp(this->size());bmp.fill();QPainter p(&bmp);p.setPen(Qt::NoPen);p.setBrush(Qt::black);p.setRenderHint(QPainter::Antialiasing);p.drawRoundedRec…

如何设计性能测试用例!一文1000字详解(建议收藏)

性能测试是确保软件应用在各种负载和条件下都能保持良好性能的关键活动&#xff0c;涉及到系统的响应时间&#xff0c;还包括吞吐量、资源利用率、可靠性和系统的可伸缩性。 性能测试用例设计需要对业务需求和系统行为有深刻理解&#xff0c;设计过程涉及确定测试目标、选择相…

Docker应用-自定义网络连接

Docker网络 文章目录 Docker网络网络的基础配置自定义网络网络连通 网络的基础配置 大量的互联网应用服务包括多个服务组件&#xff0c;这往往需要多个容器之间通过网络通信进行互相配合。 目前Docker提供了映射容器端口到宿主机主机和容器互联机制来为容器提供网络服务&…