小程式不同頁面之間的傳值方式
阿新 • • 發佈:2022-05-03
今天來說一下小程式不同頁面之間傳值的幾種方式:
1、URL傳值
這種方式最常用,比如:
wx.navigateTo({
url: '../detail/detail?cid='+cid+'&access_token='+access_token
})
這裡面直接通過跳轉頁面的URL進行傳值,然後在另一個頁面進行接收:
onLoad: function (opt) {
console.log('cid =' + opt.cid);
console.log('access_token =' + opt.access_token);
}
這種傳值方式只適合值比較少的時候使用,傳值比較多的時候,還是建議寫本地快取~
2、本地快取
小程式API提供了本地快取資料的API,預設可以快取10M的資料,如下:
wx.setStorageSync('checkin', checkin);
checkin是一個object,在需要的頁面直接呼叫wx.getStorageSync即可獲取,這樣就解決了傳值較少的問題了。
3、全域性APP
其實還有第三種方式,就是全域性APP變數。app.js和app.wxss中的程式碼都是全域性生效的,所以我們可以利用這一點兒,在不同頁面之間進行傳值。
App({ onLaunch: function () { }, globalData: { host: 'https://api-xcx-qunsou.weiyoubot.cn/xcx', // 版本升級時這裡的version加1並替換versionFeature的文案即可 version: 2, versionFeature: '更新說明' } })