1. 程式人生 > >【小程式】 好友分享 onShareAppMessage path路徑構造&解析

【小程式】 好友分享 onShareAppMessage path路徑構造&解析

onShareAppMessage(Object)

path路徑構造:

onShareAppMessage(options) {
      let _title = this.swiperData && this.swiperData.name
      let a = getCurrentPages()[getCurrentPages().length - 1]
      let path = a.__route__
      let shareFrom = this.getShareData()
      path += '?productId=' + this
.productId if (path.indexOf('?') > 0) { path += '&scene=!' + this.gainPValue() } else { path += '?scene=!' + this.gainPValue() } if (shareFrom) { if (path.indexOf('?') > 0) { path += '&shareFrom=' + encodeURIComponent(JSON.stringify(shareFrom)) } else
{ path += '?shareFrom=' + encodeURIComponent(JSON.stringify(shareFrom)) } } let shareObj = { title: _title, path: path } return shareObj }

通過 getCurrentPages()[getCurrentPages().length - 1] 拿到當前頁面所在路徑,之後根據需要拼接出引數資訊,如:
path += ‘?productId=’ + this.productId,等等,可以多個引數

path路徑解析:
可以在page頁面的onLoad(options) 中解析。
page 中列印options引數如下:

{“productId”:”210598350”,”shareFrom”:”*”,”scene”:”“}

在app 的onShow(options)方法中,列印options如下:

{“path”:”/pages/“,”query”:{“productId”:”210598350”,”shareFrom”:”“,”scene”:”“},”scene”:1007,”referrerInfo”:{}}

下面是摘自官網描述:

監聽使用者點選頁面內轉發按鈕( 元件 open-type=”share”)或右上角選單“轉發”按鈕的行為,並自定義轉發內容。

注意:只有定義了此事件處理函式,右上角選單才會顯示“轉發”按鈕

Object 引數說明:

引數 型別 說明 最低版本
from String 轉發事件來源。
button:頁面內轉發按鈕;
menu:右上角轉發選單 1.2.4
target Object 如果 from 值是 button,則 target 是觸發這次轉發事件的 button,否則為 undefined 1.2.4
webViewUrl String 頁面中包含元件時,返回當前的url 1.6.4

此事件需要 return 一個 Object,用於自定義轉發內容,返回內容如下:

自定義轉發內容

欄位 說明 預設值 最低版本
title 轉發標題 當前小程式名稱
path 轉發路徑 當前頁面 path ,必須是以 / 開頭的完整路徑
imageUrl 自定義圖片路徑,可以是本地檔案路徑、程式碼包檔案路徑或者網路圖片路徑。支援PNG及JPG。顯示圖片長寬比是 5:4。 使用預設截圖 1.5.

相關推薦

程式 好友分享 onShareAppMessage path路徑構造&解析

onShareAppMessage(Object) path路徑構造: onShareAppMessage(options) { let _title = this.swiperData && this.swiperData.

程式分頁載入資料,下拉載入更多,上拉重新整理

【 小程式】分頁載入資料,下拉載入更多,上拉重新整理 分頁載入的優點就不多說了,下面主要記錄一下幾個問題點。 scroll-view元件不能用在頁面根佈局中,不然觸發不了系統的onPullDownRefresh()、onReachBottom()回撥。 在Page頁

程式解決 Android機型上button按鈕出現邊框

【小程式】解決 Android機型上button按鈕出現邊框 問題描述: 在Android機型上出現button按鈕元件,在四個角上出現邊框。在模擬器、iPhone手機上沒有邊框。 問題原因: button控制元件上有一個偽元素(::after),雖然

程式開發 JS知識總結

JS知識總結 js判斷字元是否為空的方法: //判斷字元是否為空的方法 function isEmpty(obj){ if(typeof obj == "undefined" || obj == null || obj == ""){ ret

程式獲取自定義屬性

<view bindtap="getDataAttr" data-postId="{{postId}}" data-id="id" class="div"> </view> getDataAttr:function(e){ console.log(e.currentTa

程式程式中設定 tabBar

小程式中 tabBar 的設定,tabBar 就是底部導航欄,在app.json中配置。 list 為陣列至少兩項。tab欄的 position 為 top 時間,不顯示圖示。 "tabBar": { "color": "#a9b7b7", "selectedColor": "#11cd6e",

程式程式安卓與ios相容問題

1,formId 不同 說明:安卓與ios下的formId的規則是不一樣的,之前由於後端攔截了導致報錯 ios下的formId 安卓下的formId 2,儘量少用定位fixed的百分比 說明:由於小程式是用rpx作為單位,rpx擁有自適應作用,當螢幕大小比例出現變化時

程式(踩坑)

1, canvas中新增文字定位出錯問題 fillText 說明:當我使用fillText新增文字並定位到座標0,0時,發現文字並沒有如預期的一樣顯示,而是有部分超出了畫布外。後來才發現是因為畫布中是預設文字是根據座標點居中顯示的; 只要設定好對其方式即可; ctx.setT

程式程式簡單實現雙擊事件

由於某個需求需要使用到雙擊事件,而小程式並沒有雙擊事件,so 雙擊事件其實就是兩次單擊的時間相差小於300ms 雙擊和單擊並存時的實現 doubleClick(e){ //e.timeStamp:當前點選時的毫秒數; // this.touchStartTime: 儲存上

程式儲存圖片到本地相簿

在小程式的開發中,會經常遇見把小程式內的圖片儲存到本地。 現在就為大家講解圖片儲存到本地的方法 常見的儲存圖片觸發事件型別: 長按圖片觸發函式儲存到本地,點選按鈕觸發函式儲存到本地 回撥函式程式碼如下: //獲取圖片資訊 wx.getImageInfo({ src: this.da

程式獲取使用者資訊儲存到本地、全域性變數

微信小程序升級後,獲取 wx.getUserInfo 介面後續將不再出現授權彈窗,所以需要使用 button 元件,並將 open-type 指定為 getUserInfo 型別,獲取使用者基本資訊。 微信小程式與小遊戲獲取使用者資訊介面調整說明 1.在頁面上建立一個button標籤

程式頭腦王者答題邏輯簡單復刻(程式碼純手寫)

前言 今天接到公司通知要求仿照小程式頭腦王者的模型上線一個自己的單詞APP 所以就花了兩個小時的時候寫了一個demo 思路 要想實現答題系統,首先要跟後臺確定題庫返回資料的型別和結構 經過跟後臺協商,

程式globalData在其他頁面獲取時資料為空解決

​​在app裡獲取基礎資料 如使用者資訊、使用者地址等 在其他頁面調取時 往往app資料還沒有獲取 其他頁面已經進入onLoad生命週期, 這時可以使用回撥函式 eg. 在app中 增加回調函式 localNameReadyCallBack(隨意命名) 在需要呼叫

程式當前“頁面B”動態更改title,點選返回按鈕,更改的標題會顯示在“來源頁面A”

最近在做小程式的時候遇到這麼一個有趣的問題,就是從A頁面跳轉到B頁面,如果B頁面需要在介面載入之後更改title, 並且如果介面請求過慢,還滅有請求完畢時就點選返回按鈕回到A頁面,這時B頁面的請求會繼

程式讓控制元件隱藏或者顯示

最開始寫的時候運用新增class的方法,舉例:test.wxml: <view class=" {{showOrHidden?'show':'hide'}}">+++++++++++++</view>test.wxss:.hide { displa

程式如何實現訊息推送之收集推送碼

當訂單狀態變更時,小程式如何實現訊息推送來通知到使用者呢。微信開放了一個叫模板訊息的功能。  要實現訊息推送,分三步走 一、前期配置工作 二、前端工作 要實現推送訊息給使用者,就要有推送碼,官方API介紹提交一次表單有一次推送機會,完成一次支付行為有三次推送機

程式微信程式開發實踐

帳號相關流程 註冊範圍 企業 政府 媒體 其他組織 換句話講就是不讓個人開發者註冊。 :) 填寫企業資訊 不能使用和之前的公眾號賬戶相同的郵箱,也就是說小程式是和微信公眾號一個層級的。 填寫公司機構資訊,對公賬戶資訊 繫結管理員微信 企業認

程式手把手教你如何使用模板訊息通知(採用PHP作為後臺)

前言 模板訊息可以高效地傳遞訊息給使用者,從而更好地提升使用者體驗 需求 有這麼一個小程式,使用者可以在小程式中自定義事件提醒,小程式在使用者設定的時間中進行模板訊息通知 正題 模板訊息的傳送實際上是一個post請求過程 請求地址為 https://api.weix

程式之net::ERR_NAME_NOT_RESOLVED的問題

背景 最近在開發一個小程式,然後發生一個錯誤 POST https://xxxxxxxxxxxxx.php net::ERR_NAME_NOT_RESOLVED 開啟上面的url發現 無法訪問此網站 找不到 xxxxxxxx 的伺服器

程式封裝通用請求函式

 通常為了介面呼叫的統一性,每個專案都會根據需求封裝請求函式,在自己封裝的請求中,可以做一些通用的操作 以下封裝好的全域性通用請求函式。當已登入時,傳送的請求頭帶有token標誌使用者,當未登入時,傳送的請求頭無token。 每個函式,傳入引數(介面地址,資料,成功回撥函