国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 熱點 > 微信 > 正文

基于Taro的微信小程序模板消息-獲取formId功能模塊封裝實踐

2024-07-22 01:17:58
字體:
來源:轉載
供稿:網友

前言

在微信小程序中,小程序提供了一種能力-模板消息,官方文檔是這樣描述的:“基于微信的通知渠道,我們為開發者提供了可以高效觸達用戶的模板消息能力,以便實現服務的閉環并提供更佳的體驗。”

看圖說話:

下發模板消息效果圖

這無疑又給小程序提供了與用戶進行通知、反饋的新能力,但是小程序為了防止模板消息對用戶造成信息轟炸,影響用戶體驗,也設置了一些規矩:

模板推送位置:服務通知 模板下發條件:用戶本人在微信體系內與頁面有交互行為后觸發 模板跳轉能力:點擊查看詳情僅能跳轉下發模板的該帳號的各個頁面

那我們想通過小程序給用戶發送模板消息需要怎么做呢?

用戶必須與小程序發生了頁面的交互行為,如支付、提交表單 支付會產生一個prepay_id的標記,提交表單會產生一個formId的標記 服務端根據prepay_id或formId來發送模板消息

無論是prepay_id還是formId都只有7天的有效期

那么問題來了?

如果用戶在使用小程序的過程中,沒有在7天內進行一些信息提交操作,或者是支付操作,那么我們就無法獲取prepay_id,formId了,但是實際的業務上卻需要給用戶發送一些模板消息,已達到某些推廣或通知的效果。prepay_id必須是支付的時候才能產生,這個無需多言。今天胡哥就給大家來介紹下,如何在小程序中盡可能的獲取formId,以達到讓服務端有盡可能多的formId來發送模板消息。

獲取formId的原理

必須是form組件,并且需聲明屬性report-submit=",表示需要發送模板消息,同時監聽bindsubmit事件; 必須在該form組件中,有button組件,同時該button組件需聲明屬性form-type="submit"。

上代碼 --- 小程序原生代碼演示

<form report-submit="true" bindSubmit="submitEvent"> <button open-type="submit">提交</button>  </form>

獲取formId模塊的封裝

基于小程序獲取formId的原理,我們可以變相考慮:

只要用戶觸發了符合特定條件的包含button組件的form組件的bindSubmit事件,就可以獲取到formID; 同時借助CSS樣式,我們可以將form組件和button組件設置成隱形的,不可見但確真實存在; 將隱形的button組件覆蓋在真實的組件上,當點擊真實組件時,實際上就觸發了button的點擊,同時用戶是無感知的。

這里是重點,圈起來,一定會考的!

基于Taro的獲取formId功能模塊封裝實踐

設計獨立的功能模塊,以便供其他模塊方便調用,項目目錄結構

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嘉峪关市| 深水埗区| 喀什市| 上犹县| 湘潭市| 肥东县| 琼海市| 新泰市| 元朗区| 澳门| 嵊州市| 盐边县| 探索| 岫岩| 聂拉木县| 濉溪县| 迭部县| 清镇市| 柳河县| 商南县| 沛县| 连云港市| 禄丰县| 综艺| 晋江市| 澄城县| 湘潭市| 柳江县| 永福县| 安义县| 青田县| 怀柔区| 河北区| 高州市| 安岳县| 孝义市| 新泰市| 电白县| 尉氏县| 米脂县| 古丈县|