详解微信小程序开发之formId使用(模板消息)


Posted in Javascript onAugust 27, 2019

基于微信小程序的模板消息:

官方文档

  • 基于微信的通知渠道,我们为开发者提供了可以高效触达用户的模板消息能力,以便实现服务的闭环并提供更佳的体验。
  • 模板推送位置:服务通知
  • 模板下发条件:用户本人在微信体系内与页面有交互行为后触发,详见下发条件说明
  • 模板跳转能力:点击查看详情仅能跳转下发模板的该帐号的各个页面

使用案例

场景描述:前台获取 formId 送至后台,由后台实现模板消息的发送。(此处由于 formId 只能由用户触发表单提交操作产生,故前台需要将每次产生的formId发送至后台,由后台保存并在适当时候调用微信接口向用户发送模板消息)

代码实现:

//example.wxml
<form bindsubmit="submit" report-submit='true' >
 <button form-type="submit" type="default" size="mini">提交</button>
</form>
 
//example.js
submit: function (e) {
 console.log(e.detail.formId);
}

注意:因为我们是在开发者工具中测试,所以得到的formId值为the formId is a mock one。在真机中我们可以得到一个具体的值,利用该值结合其他参数就可以发送模板消息啦,所以测试真实场景务必在真机中测试

微信目前的限制是在如下两种情况下小程序才能够正常的使用模板消息:

  1. 在小程序内使用了微信支付接口,
  2. 在小程序里用户点击了表单,而且该表单的report-submit属性值为true时。

index.wxml

<navigator class="navs" url="{{urls}}">
  中国
</navigator>

index.js

Page({
 data: {
  urls:'/pages/lanbo/lanbo?title=我是Index里面的title数据'
 }
})

要跳转的页面lanbo页面

lanbo.wxml

<text>pages/lanbo/lanbo.wxml</text>

lanbo.js

Page({
 data: {
 
 },
 onLoad: function (options) {
  this.setData({
   title:options.title
  });
  console.log(this.data.title);
 }
})

跳转页面之后请在调试模式下中的console下查看数据。

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

Javascript 相关文章推荐
js获取控件位置以及不同浏览器中的差别介绍
Aug 08 Javascript
浅析Js中的单引号与双引号问题
Nov 06 Javascript
jquery限定文本框只能输入数字即整数和小数
Nov 29 Javascript
Jquery中offset()和position()的区别分析
Feb 05 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
Mar 25 Javascript
jQuery简单验证上传文件大小及类型的方法
Jun 02 Javascript
微信小程序 获取微信OpenId详解及实例代码
Oct 31 Javascript
jQuery实现隔行变色的方法分析(对比原生JS)
Nov 18 Javascript
npm全局模块卸载及默认安装目录修改方法
May 15 Javascript
layui表格内容溢出的解决方法
Sep 06 Javascript
JS代码屏蔽F12,右键,粘贴,复制,剪切,选中,操作实例
Sep 17 Javascript
vant组件中 dialog的确认按钮的回调事件操作
Nov 04 Javascript
在vue项目中使用codemirror插件实现代码编辑器功能
Aug 27 #Javascript
vue使用codemirror的两种用法
Aug 27 #Javascript
微信小程序中为什么使用var that=this
Aug 27 #Javascript
JS常见面试试题总结【去重、遍历、闭包、继承等】
Aug 27 #Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
Aug 27 #Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
Aug 27 #jQuery
JS多个表单数据提交下的serialize()应用实例分析
Aug 27 #Javascript
You might like
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
javascript权威指南 学习笔记之javascript数据类型
2011/09/24 Javascript
javascript 使用 NodeList需要注意的问题
2013/03/04 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
基于Css3和JQuery实现打字机效果
2015/08/11 Javascript
详解bootstrap的modal-remote两种加载方式【强化】
2017/01/27 Javascript
微信小程序左滑删除效果的实现代码
2017/02/20 Javascript
JavaScript中使用webuploader实现上传视频功能(demo)
2017/04/10 Javascript
javascript checkbox/radio onchange不能兼容ie8处理办法
2017/06/13 Javascript
Angular中响应式表单的三种更新值方法详析
2017/08/22 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
从理论角度讨论JavaScript闭包
2019/04/03 Javascript
javascript中undefined的本质解析
2019/07/31 Javascript
[03:40]DOTA2亚洲邀请赛小组赛第二日 赛事回顾
2015/01/31 DOTA
Python模块学习 filecmp 文件比较
2012/08/27 Python
python获取指定网页上所有超链接的方法
2015/04/04 Python
用于统计项目中代码总行数的Python脚本分享
2015/04/21 Python
Python遍历目录并批量更换文件名和目录名的方法
2016/09/19 Python
浅谈python中的正则表达式(re模块)
2017/10/17 Python
Python文件读写常见用法总结
2019/02/22 Python
python五子棋游戏的设计与实现
2019/06/18 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
Django rstful登陆认证并检查session是否过期代码实例
2019/08/13 Python
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
2020/01/13 Python
python 获取当前目录下的文件目录和文件名实例代码详解
2020/03/10 Python
基于python实现MQTT发布订阅过程原理解析
2020/07/27 Python
详解python中的闭包
2020/09/07 Python
五个2015 年最佳HTML5 框架
2015/11/11 HTML / CSS
Nike意大利官网:Nike.com IT
2020/01/19 全球购物
简单介绍Object类的功能、常用方法
2013/10/02 面试题
法学专业自我鉴定
2014/02/05 职场文书
《圆明园的毁灭》教学反思
2016/02/16 职场文书
《自己去吧》教学反思
2016/02/16 职场文书