作小程序開發發現,頁面分享出去後,用戶經過分享進去的頁面很難找到返首頁的狀況。(微信官方操做是點擊右上角三個點,在手機下方顯示返回首頁)。民間不少方案是本身在頁面加個懸浮Home標註。
今天我分享另一種方法。請看下面.gif
;小程序
有沒有發現,左上角有返回按鈕了。原理簡單,在你要分享的頁面,分享配置時配置你的首頁,並帶上對應的參數,在首頁 onLoad
方法中能夠獲取。代碼以下:服務器
<!--index.wxml--> <view class="container"> <text>我是首頁</text> <button bindtap='goLogs'>go logsPage</button> </view> const app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserInfo') }, //事件處理函數 goLogs: function() { wx.navigateTo({ url: '/pages/logs/logs' }) }, onLoad: function (options) { console.log(options) if (options.share_query){ wx.showLoading({ title: '我是從分享頁面進入的', }) setTimeout(function () { wx.hideLoading() wx.navigateTo({ url: '/pages/logs/logs', }) }, 2000) } } }) <!--logs.wxml--> <view class="container log-list"> <block wx:for="{{logs}}" wx:for-item="log"> <text class="log-item">{{index + 1}}. {{log}}</text> </block> </view> const app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserInfo') }, //事件處理函數 goLogs: function() { wx.navigateTo({ url: '/pages/logs/logs' }) }, onLoad: function (options) { console.log(options) //判斷是否分享進入 if (options.share_query){ wx.showLoading({ title: '我是從分享頁面進入的', }) setTimeout(function () { wx.hideLoading() wx.navigateTo({ url: '/pages/logs/logs', }) }, 2000) } } })
最後 拋磚引玉