教大家用20行js代码,开发好小程序订阅消息
微信小程序官方决定在2020-1-10全面线下小程序模板消息,要去替换为订阅消息。那对开发者而言,又要一个一个地方去修改代码兼容…
所以我替大家写了段代码,来快速解决问题。复制下面这段代码到app.js文件最上面即可解决问题。代码的主要功能是在每一个tap类型的点击事件中触发订阅弹窗,这样用户点几次界面,你就可以发几次消息。这也是让发送次数最大化,不可能比这个次数还多了。
预期结果是:用户点几次弹窗,就会注意到有一个不再提醒按钮,一旦选了它,那你就可以随便发订阅消息了!
// 记录原Page方法
const originPage = Page;
// 重写Page方法
Page = (page) => {
Object.keys(page).forEach(function(key){
if(key !== 'data'){
let originMethod = page[key];
page[key] = function () {
let e = arguments[0];
//给所有的点击事件增加订阅消息弹窗
if(!!e && !!e.type && e.type === 'tap'){
wx.requestSubscribeMessage({
tmplIds: ['3E66jPXafsnikZoQR5uk0OUzIUVASZE5scyAu5YCHPI'], ////////这里替换为自己的模板ID/////
success (res) {
// console.log(res)
},
fail (res) {
// console.log('订阅消息失败',res)
}
})
}
return originMethod.call(this,...arguments)
}
}
});
return originPage(page);
};