小程序新版订阅消息模板消息


Posted in Javascript onDecember 31, 2019

小程序订阅消息
功能介绍
消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验。

订阅消息推送位置:服务通知
订阅消息下发条件:用户自主订阅
订阅消息卡片跳转能力:点击查看详情可跳转至该小程序的页面

小程序新版订阅消息模板消息

使用说明
步骤1:获取模板 ID
在微信公众平台手动配置获取模板 ID:
登录 https://mp.weixin.qq.com 获取模板,如果没有合适的模板,可以申请添加新模板,审核通过后可使用。

配置订阅消息在这里如下图所示

小程序新版订阅消息模板消息

步骤2:获取下发权限
详见小程序端消息订阅接口 wx.requestSubscribeMessage

步骤3:调用接口下发订阅消息
详见服务端消息发送接口 subscribeMessage.send

wx.requestSubscribeMessage(Object object)
基础库 2.8.2 开始支持,低版本需做兼容处理。

这里要注意了你小程序的appid 必须跟你配置的appid 一致否则你请求到后端去就会报错显示 你的模板id不存在错误如下

小程序新版订阅消息模板消息

参数代码什么的我就不??铝 https://developers.weixin.qq....
这是开发文档链接请参照

基础示例代码:

wx.requestSubscribeMessage({ tmplIds: \[''\], success (res) { } })

我的业务示例代码:

import { setSubscribeMessage } from "../api/common-api";// 我提交接口需要的api

const { globalData } = getApp();
/**
 * 订阅消息
 * 不管内部发生什么错误
 * 也不用管内部做了什么操作
 * 都返回 resolve()
 * 都不能影响业务流程
 *
 * 使用方法:
 * -- 业务逻辑
 * await subscribeMessage(list)
 * -- 业务逻辑
 *
 * */
function subscribeMessage(list = []) {
 console.log("list", list);
 let resolve = null;
 // eslint-disable-next-line no-unused-vars
 let reject = null;
 const promise = new Promise((res, rej) => {
  resolve = res;
  reject = rej;
 });
 try {
  wx.requestSubscribeMessage({
   tmplIds: [...list],
   complete(res) {
    console.log("res", res);
    let params = {
     subscribe_templates: [],
     open_id: globalData.userInfo.open_id
    };
    for (let key in res) {
     if (key !== "errMsg" && key !== "errorCode") {
      let obj = {
       template_id: key,
       status: res[key]
      };
      params.subscribe_templates.push(obj);
     }
    }
    console.log("params", params);
    // 接口提交
    setSubscribeMessage(params);
    // 只需要返回成功
    resolve();
   }
  });
 } catch (err) {
  console.error("subscribeMessage-err", err);
  resolve();
 }

 return promise;
}

export { subscribeMessage };

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
prototype Element学习笔记(Element篇三)
Oct 26 Javascript
date.parse在IE和FF中的区别
Jul 29 Javascript
IE的有条件注释判定IE版本详解(附实例代码)
Jan 04 Javascript
关于Javascript与iframe的那些事儿
Jul 04 Javascript
Jquery easyUI 更新行示例
Mar 06 Javascript
jquery获取多个checkbox的值异步提交给php
Jul 07 Javascript
AngularJS入门教程之路由与多视图详解
Aug 19 Javascript
20行JS代码实现网页刮刮乐效果
Jun 23 Javascript
浏览器调试动态js脚本的方法(图解)
Jan 19 Javascript
vue-cli 如何打包上线的方法示例
May 08 Javascript
微信小程序swiper使用网络图片不显示问题解决
Dec 13 Javascript
用JS创建一个录屏功能
Nov 11 Javascript
小程序实现长按保存图片的方法
Dec 31 #Javascript
使用webpack搭建vue环境的教程详解
Dec 31 #Javascript
Vue 实现显示/隐藏层的思路(加全局点击事件)
Dec 31 #Javascript
TypeScript之调用栈的实现
Dec 31 #Javascript
Vue通过配置WebSocket并实现群聊功能
Dec 31 #Javascript
Vue实现剪贴板复制功能
Dec 31 #Javascript
Vue+Element实现网页版个人简历系统(推荐)
Dec 31 #Javascript
You might like
PHP echo,print,printf,sprintf函数之间的区别与用法详解
2013/11/27 PHP
php按单词截取字符串的方法
2015/04/07 PHP
php使用timthumb生成缩略图的方法
2016/01/22 PHP
js 提交和设置表单的值
2008/12/19 Javascript
使用JavaScript 编写简单计算器
2014/11/24 Javascript
jQuery平滑旋转幻灯片特效代码分享
2015/09/07 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
2017/02/13 Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
2017/04/23 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
angular.js实现购物车功能
2017/10/23 Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
2018/03/06 Javascript
详解js的视频和音频采集
2018/08/09 Javascript
Javascript数组方法reduce的妙用之处分享
2019/06/10 Javascript
关于微信小程序map组件z-index的层级问题分析
2019/07/09 Javascript
JS回调函数简单易懂的入门实例分析
2019/09/29 Javascript
微信小程序实现限制用户转发功能的实例代码
2020/02/22 Javascript
[01:10]3.19DOTA2发布会 三代刀塔人第一代
2014/03/25 DOTA
[02:03]永远的信仰DOTA2 中国军团历届国际邀请赛回顾
2016/06/26 DOTA
Python Sqlite3以字典形式返回查询结果的实现方法
2016/10/03 Python
基于Python3 逗号代码 和 字符图网格(详谈)
2017/06/22 Python
python 上下文管理器使用方法小结
2017/10/10 Python
Python通过for循环理解迭代器和生成器实例详解
2019/02/16 Python
python实现图片九宫格分割
2021/03/07 Python
Python生命游戏实现原理及过程解析(附源代码)
2019/08/01 Python
python字典的遍历3种方法详解
2019/08/10 Python
Python求区间正整数内所有素数之和的方法实例
2020/10/13 Python
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
马耳他航空公司官方网站:Air Malta
2019/05/15 全球购物
班主任工作经验交流材料
2014/05/13 职场文书
教师民族团结演讲稿
2014/08/27 职场文书
淮阳太昊陵导游词
2015/02/10 职场文书
汽车修理厂管理制度
2015/08/05 职场文书
SQL SERVER实现连接与合并查询
2022/02/24 SQL Server
Nginx的gzip相关介绍
2022/05/11 Servers
mybatis 获取更新记录的id
2022/05/20 Java/Android