globalData和storage的區(qū)別
一、app.globalData 是全局變量,下次進入的時候,就要重新獲取,一般用于:
1、保存一些可能涉及安全類的數(shù)據(jù),例如資源類,每次需要很準(zhǔn)確的,就建議用全局變量。
2、全局變量每次關(guān)閉小程序重新打開的時候,都會進行初始化更新。
二、緩存(StorageSync)本地存儲,storage 更像是本地的數(shù)據(jù)庫,可以保存更久,一般用于:
1、小程序中的本地存儲有同步功能,可用于保存用戶信息(用戶登錄后的一些基本信息)
2、緩存的更新需要使用setStorageSync方法。
globalData的用法
app.js中
app.globalData初始化數(shù)據(jù),在app.js中,入口js中,
App({
onLaunch: function() {
},
onShow: function(options) {
},
onHide: function() {},
getUserInfo: function(cb) {},
globalData: {
changeshop: null
}
})
app.globalData 存儲數(shù)據(jù)
const app = getApp();
//緩存全局保存
app.globalData.changeshop = changeshop;
在需要使用的地方
const app = getApp()
let changeshop = app.globalData.changeshop;
if (changeshop) {
self.setData({
addrs: changeshop
});
}
StorageSync的用法
1、存入緩存
var addressList= wx.setStorageSync(key,value)
2、取出緩存
var addressList= wx.getStorageSync(key)
3、清除緩存
wx.removeStorageSync(key)
4、清除所有緩存
wx.clearStorageSync()
目前需要實現(xiàn)的是小程序首頁在今日最右邊放隱藏/顯示摘要開關(guān),只顯示標(biāo)題
我第一想法是后端寫一個接口,來控制這里顯示/隱藏摘要,后面發(fā)現(xiàn)其實用StorageSync就能實現(xiàn)了。
這里的swich的樣式需要改一下,小程序自帶的有點丑,而且有點大,樣式如下:
app.wxss
/*swtich整體以及true背景色*/
.wx-switch-input{
width:80rpx !important;
height:40rpx !important;
background: #43A0E9 !important;
border: #43A0E9 !important;
}
/*開關(guān)為false背景樣式)*/
.wx-switch-input::before{
width:82rpx !important;
height: 40rpx !important;
background: #F3F3F3 !important;
border: #F3F3F3 !important;
}
/*中間小球*/
.wx-switch-input::after{
width: 40rpx !important;
height: 40rpx !important;
}
wxml文章來源:http://www.zghlxwxcb.cn/news/detail-429316.html
<view class="date-box">
<view class="f50">今日</view>
<view>
<text class="f14">隱藏摘要</text>
<switch class="ml5" checked="{{isChecked}}" bindchange="changeSwitch"/>
</view>
</view>
js文章來源地址http://www.zghlxwxcb.cn/news/detail-429316.html
const app = getApp()
Component({
data: {
isChecked: false
},
methods: {
getSwitch(){
let isCheck = wx.getStorageSync("isChecked") //取出緩存中的isChecked
if(isCheck){
this.setData({
isChecked: isCheck
})
}
},
changeSwitch(){
this.setData({
isChecked: !this.data.isChecked
})
wx.setStorageSync('isChecked', this.data.isChecked) //將isChecked存入緩存
}
}
})
到了這里,關(guān)于微信小程序全局變量(globalData)和緩存(StorageSync)的區(qū)別和用法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!