您好,登錄后才能下訂單哦!
小編給大家分享一下微信小程序怎樣實現轉發功能,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
微信小程序 轉發功能的實現
1.當用戶將小程序轉發到任一群聊之后,可以獲取到此次轉發的 shareTicket
2.此轉發卡片在群聊中被其他用戶打開時,可以在 App.onLaunch() 或 App.onShow 獲取到另一個 shareTicket
3.兩步獲取到的 shareTicket 均可通過 wx.getShareInfo() 接口可以獲取到相同的轉發信息。
onShareAppMessage(options)函數設置該頁面的轉發信息。
options參數說明:
from:轉發事件來源。button:頁面內轉發按鈕;menu:右上角轉發菜單;
target:如果 from 值是 button,則 target 是觸發這次轉發事件的 button,否則為 undefined
自定義字段:
return { title: '轉發', // 轉發標題(默認:當前小程序名稱) path: '/pages/index/index', // 轉發路徑(當前頁面 path ),必須是以 / 開頭的完整路徑 success(e) { // shareAppMessage: ok, // shareTickets 數組,每一項是一個 shareTicket ,對應一個轉發對象 // 需要在頁面onLoad()事件中實現接口 wx.showShareMenu({ // 要求小程序返回分享目標信息 withShareTicket: true }); }, fail(e) { // shareAppMessage:fail cancel // shareAppMessage:fail(detail message) }, complete() { } }
wx.showShareMenu(OBJECT) 帶 shareTicket 的轉發。
1.在SDK中與真機調試的過程中,都需要設withShareTicket為true,
2.否則在真機的調試過程中,即便選擇了轉發的群聊,也不會返回shareTicket
onLoad(e) { wx.showShareMenu({ withShareTicket: true }) }, onShow(e) { wx.showShareMenu({ withShareTicket: true }) },
wx.getShareInfo(OBJECT)獲取轉發詳細信息
if (res.shareTickets) { // 獲取轉發詳細信息 wx.getShareInfo({ shareTicket: res.shareTickets[0], success(res) { res.errMsg; // 錯誤信息 res.encryptedData; // 解密后為一個 JSON 結構(openGId 群對當前小程序的唯一 ID) res.iv; // 加密算法的初始向量 }, fail() {}, complete() {} }); }
小程序在群里被打開后,獲取情景值和shareTicket
//app.js App({ onLaunch: function (ops) { if (ops.scene == 1044) { console.log(ops.shareTicket) } } })
Bug & Tip
1.頁面之間的參數傳遞,需要在onLoad()函數中接收,onShow()函數中無法接收。
2.獲取群聊中被打開的小程序的shareTicket,需要在App.onLaunch() 或 App.onShow()。 頁面的生命周期函數中是獲取不到的。
3.將轉發內容至單個用戶時,是無法獲取到shareTicket 。
看完了這篇文章,相信你對“微信小程序怎樣實現轉發功能”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。