前不久小程序突然公共说模板消息要改版了,具体内容可以看这
https://developers.weixin.qq.com/community/develop/doc/00008a8a7d8310b6bf4975b635a401?blockType=1
反正大概意思就是模板消息要停用了,会出一个新的订阅消息替代,订阅消息有两种,一次性订阅和长期订阅。想详细了解可以看文档。这里不再说明,分享一下提供改的的方法(每次小程序突然改动,苦逼的还是我们这些底层程序猿~,说多了都是泪)
以我们公司的小程序为例子,以前模板消息的时候,我们是在button按钮外面套一层form标签,给它加上subumit事件,提交的时候就可以在参数里面活动formId了,然后在被它们传给后端保存起来,7天内有效,想要发通知的时候用一个id就可以了
改版前:
<!-- wxml -->
<form report-submit bindsubmit='formSubmit'>
<button form-type="submit">立即开通</button>
</form>
<!-- js-->
formSubmit(e) {
const formId = e.detail.formId
app.addForm(formId ) .// 封装的传给后台api
}
改版后:
<!-- wxml -->
<form report-submit>
<button form-type="submit" bindtap="tap">立即开通</button>
</form>
<!-- js-->
// 注意,要用点击事件
tap(e) {
wx.requestSubscribeMessage({
tmplIds: tmplIds, // 此处为调用后端接口拿到的id集合
success (res) {
console.log(res)
},
fail(err) { console.log(err) }
})
}
非常简单,有一个要注意的点是,原来获取formId是用formsubmit 事件的 ,这个发送订阅消息只能用点击事件,最后看下效果图