怎么從微信卡包跳轉到小程序?下面本篇文章給大家介紹一下微信卡包跳轉小程序實現及解決的方法,希望對大家有所幫助!
微信卡包跳轉小程序
先梳理小程序生命周期**小程序生命周期
onLaunch 生命周期函數--監聽小程序初始化 當小程序初始化完成時,會觸發 onLaunch(全局只觸發一次)
onShow 生命周期函數--監聽小程序顯示 當小程序啟動,或從后臺進入前臺顯示,會觸發 onShow
onHide 生命周期函數--監聽小程序隱藏 當小程序從前臺進入后臺,會觸發 onHide
onError 錯誤監聽函數 當小程序發生腳本錯誤,或者 api 調用失敗時,會觸發 onError 并帶上錯誤信息
一些例子
App({ onLaunch: function (options) { console.log("app.js ---onLaunch---" ); }, onShow:function(){ console.log("app.js ---onShow---"); }, onHide:function(){ console.log("app.js ---onHide---"); }, onError: function (msg){ console.log("app.js ---onError---" ); }, globalData: { userInfo: null } })
打印結果如下
至此知道了小程序的生命周期執行順序以及觸發條件
微信卡包跳轉小程序可以利用 app.js 里面的onshow方法 onshow(options)
通過options
獲取的到參數,這里值得注意的是在app.js
里面的onshow
里面的options獲取的參數全部會被封裝在query
,也就是options.query
來獲取到進入小程序的參數
坑:參數不一樣,app.js有緩存本以為app.js
里面獲取到的參數和一般頁面onload獲取的參數一樣,其實不一樣,建議在頁面onload的時候將onLoad: function (options) {}
參數重新賦值,這樣每次就會獲取到最新參數 如下所示
附帶卡包的一點配置
新增或者修改會員卡字段
https://api.weixin.qq.com/card/update?access_token=token
{ "card_id": "pEVBpxI6Fb7xqUUfrTiD738NZht4", "member_card": { "custom_field2": { "name": "到家小程序", "app_brand_pass": "home/pages/index/index", "app_brand_user_name": "gh_69986111111@app" } } }
特別注意的是:這個app_brand_user_name不是公眾號的而是小程序的原始ID加上@app
app_brand_user_name
這樣新增或者修改會員卡就可以進行跳轉了;url也是需要的。
{ "card_id": "pEVBpxI6Fb7xqUUfrTiD738NZht4", "member_card": { "custom_field2": { "url": "http://baidu.com",//這個URL必須存在 "name": "到家小程序", "app_brand_pass": "home/pages/index/index", "app_brand_user_name": "gh_69986111111@app" } } }