小程序formId
小程序的formId是为发送消息模板做准备的,只能在小程序使用时获取,后台是无法获取的。所以是用来发送一切临时的通知消息,并且formId是会过期的,且只能使用一次。期限好想是一周。但是我们为了给用户发送通知方便直接在用户使用小程序的时候收集formId并且在有效期内使用就能实现发送通知的功能。
实现策略
因为小程序限制,只能如下的方式获取formId,支付也会有formId我们这里不讨论,但是button一般太丑了。
<form report-submit="true" @submit="formSubmit">
<button form-type="submit" class="form-btn">
</button>
</form>
为了button不影响我们界面的美观,并且能够以能够对开发者不透明的使用就更好了。我们现在封装一个组件,满足一以下功能:
- 不影响前端点击事件布局。即组件透明,并且有点击区域触发submit事件
- 每次点击记录formId
- 设定每天formId的采集上限
- 当formId达到上限,不渲染form,防止频繁获取formId造成的影响
- 设定formId达到多少值上传到服务器。
下面是代码实现
框架是类vue,如果不兼容自己需要改造下
<template>
<div>
<form v-if="isGetFormId" report-submit="true" @submit="formSubmit">
<button form-type="submit" class="form-btn">
</button>
</form>
</div>
</template>
<script>
let ms = wx //兼容微信接口,如果不是使用微信,可以修改这个,并确认接口规范
export default {
data<