小程序 数据存储
小程序存储数据方式#
小程序中存储数据的地方
全局数据:
globalData本地数据:
wx.setStorageSync('logs', logs)页面数据:
pages中的data里.(在不传递的情况下,只能在当前页使用)
全局数据 globalData#
globalData 属于小程序全局的共享数据对象
设置: 写在
app.js全局文件中使用: 一般在
pages页面中,调用getApp(),获取小程序实例对象,用该对象.globalData来使用
注意:
globalData就是你定义的数据的键名,可以自定;
这个global书存储在内存中,开发阶段页面刷新会丢失.
设置数据:
// App.jsApp({ onLaunch (options) { console.log('App onLaunch') // Do something initial when launch. }, onShow (options) { // Do something when show. }, onHide () { // Do something when hide. }, onError (msg) { console.log(msg) }, globalData: 1, //设置全局数据// globalData: {a:1}})使用或修改:
// pages/post/post.js// 在页面中获取全局数据const text =getApp()console.log(text.globalData)let a =text.globalData本地数据存储#
storage 微信小程序的本地存储#
- 存数据用
setStorageSync:同步存储 - 存数据用
setStorage:异步存储 - 读取数据
getStorageSync同步取值 - 读取数据
getStorage:异步取值 - 清除一条数据
wx.removeStorage({key:'key'}) - 清除所有数据
wx.clearStorage()
本地数据增删改查 Storage#
- 设置数据
wx.setStorage(Object object)key:本地缓存中指定的key;data:需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象.
- 同步
wx.setStorageSync(string key, any data)string key:本地缓存中指定的key;any data:需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象.
wx.setStorage({ key:"key", data:"value" }) // 同步版本 wx.setStorageSync('key', 1)- 修改数据:给相同的
key再设置一个值
wx.setStorage({ key:"key", data:1})wx.setStorage({ key:"key", data:2})// 同步版本wx.setStorageSync('key', 1)wx.setStorageSync('key', 2)- 获取数据
wx.getStorage(key,callback)key:本地缓存中指定的keycallback:接口调用成功的回调函数
- 同步
any wx.getStorageSync(string key)string key:本地缓存中指定的keyany data:key对应的内容
wx.getStorage({ key: 'key', success (res) { console.log(res.data) }})//同步版本wx.getStorageSync('key')- 清除一条数据
wx.removeStorage({key:'key'})key:本地缓存中指定的key
- 同步
wx.removeStorageSync( key)key:本地缓存中指定的key
wx.removeStorage({key: 'key'})wx.removeStorage({ key: 'key', success (res) { console.log(res) }})// 同步wx.removeStorageSync('key')- 清除所有数据
wx.clearStorage()- 同步
wx.clearStorageSync()
wx.clearStorage()// 同步版本wx.clearStorageSync()