這篇文章主要介紹了微信小程序開發(fā)中數(shù)據(jù)存儲(chǔ)、參數(shù)傳遞和數(shù)據(jù)緩存的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

微信小程序開發(fā)內(nèi)測(cè)一個(gè)月.數(shù)據(jù)傳遞的方式很少.經(jīng)常遇到頁(yè)面銷毀后回傳參數(shù)的問(wèn)題,小程序中并沒(méi)有類似Android的startActivityForResult的方法,也沒(méi)有類似廣播這樣的通訊方式,更沒(méi)有類似eventbus的輪子可用.
現(xiàn)在已知傳遞參數(shù)的方法只找到三種,先總結(jié)下.由于正處于內(nèi)測(cè)階段,文檔也不是很穩(wěn)定,經(jīng)常修改,目前尚沒(méi)有人造輪子.
先上GIF:

1.APP.js
我把常用且不會(huì)更改的參數(shù)放在APP.js的data里面了.在各個(gè)page中都可以拿到var app = getApp();
app上就可以拿到存在data中的參數(shù).
2. wx.navigateTo({})中URL攜帶參數(shù)
demo中已經(jīng)寫出:
wx.navigateTo({
url: "../newpage/newpage?infofromindex=" + this.data.infofromindex,
});頁(yè)面間傳遞參數(shù)的筆記
3.wx.setStorage(OBJECT) 數(shù)據(jù)緩存
微信開發(fā)文檔中的數(shù)據(jù)緩存方法:
①存儲(chǔ)數(shù)據(jù)
try {
wx.setStorageSync('infofrominput', this.data.infofrominput)
} catch (e) {
}②獲取數(shù)據(jù)
//獲取
wx.getStorage({
key: 'infofrominput',
success: function (res) {
_this.setData({
infofromstorage: res.data,
})
}
})key是本地緩存中的指定的 key,data是需要存儲(chǔ)的內(nèi)容.
詳情見微信小程序開發(fā)文檔:文檔
貼上代碼:
1.index.js
//index.js
//獲取應(yīng)用實(shí)例
var app = getApp()
Page({
data: {
info: app.data.info,
infofromindex: '來(lái)自index.js的信息',
infofrominput: ''
},
onLoad: function () {
},
//跳轉(zhuǎn)到新頁(yè)面
gotonewpage: function () {
wx.navigateTo({
url: "../newpage/newpage?infofromindex=" + this.data.infofromindex,
});
},
//獲取輸入值
searchInputEvent: function (e) {
console.log(e.detail.value)
this.setData({ infofrominput: e.detail.value })
},
//保存參數(shù)
saveinput: function () {
try {
wx.setStorageSync('infofrominput', this.data.infofrominput)
} catch (e) {
}
}
})2.index.wxml
<!--index.wxml--> <view> <button style="background-color:#00ff00;margin:20rpx" bindtap="gotonewpage">跳轉(zhuǎn)</button> <input style="background-color:#eee;margin:20rpx;height:80rpx" placeholder="請(qǐng)輸入需要保存的參數(shù)" bindinput="searchInputEvent" /> <button style="background-color:#ff0000;margin:20rpx" bindtap="saveinput">存入Storage</button> </view>
3.newpage.js
//newpage.js
//獲取應(yīng)用實(shí)例
var app = getApp()
Page({
data: {
infofromapp: app.data.infofromapp,
infofromindex: '',
infofromstorage: '',
},
onLoad: function (options) {
var _this = this;
var infofromindex = options.infofromindex;
this.setData({
infofromindex: infofromindex
})
//獲取
wx.getStorage({
key: 'infofrominput',
success: function (res) {
_this.setData({
infofromstorage: res.data,
})
}
})
}
})4.newpage.wxml
<!--newpage.wxml-->
<view style="width:100%;margin:30rpx">infofromapp:{{infofromapp}}</view>
<view style="width:100%;margin:30rpx">infofromindex:{{infofromindex}}</view>
<view style="width:100%;margin:30rpx">infofromstorage:{{infofromstorage}}</view>5.app.js
//app.js
App({
data: {
infofromapp: '來(lái)自APP.js的信息'
},
onLaunch: function () {
}
})感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“微信小程序開發(fā)中數(shù)據(jù)存儲(chǔ)、參數(shù)傳遞和數(shù)據(jù)緩存的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!
網(wǎng)站題目:微信小程序開發(fā)中數(shù)據(jù)存儲(chǔ)、參數(shù)傳遞和數(shù)據(jù)緩存的示例分析-創(chuàng)新互聯(lián)
瀏覽地址:http://www.chinadenli.net/article36/ipcpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站制作、域名注冊(cè)、定制網(wǎng)站、微信小程序、移動(dòng)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容