引言
随着小程序的功能越来越完善,越来越与APP靠拢,用户对数据的需求也普遍增加,所以学好小程序的数据存储非常有必要。
微信小程序中的数据
静态数据
静态数据就是指从页面生成到页面销毁,不会随着时间、用户的操作而变化的数据。最常见的比如一些页面标题,一些说明。
静态数据使用
动态数据
动态数据指在页面中的数据会随着时间、用户的操作而变化的数据。
动态数据的使用
① 在对应页面的XX.js文件里,定义data对象的属性值,并初始化属性的值
data: {
title: ‘我是动态数据’,
count: 0,
userInfo: {name: ‘XXX’,phone: 13388888888},
images: [‘car.png’,’bus.png’,’train.png’]
}
② 在页面的配置文件里写入需要显示的动态数据的变量名
{{title}}
{{userInfo.name}}
{{count}}s后可重发
③ 修改data属性的值
this.setData({
title: ‘我更新数据了’,
count: 32,
userInfo: {}
})
this.setData({
title: ‘我更新数据了’,
‘userInfo.name’: ‘YYY’
})
微信小程序中的存储
内置存储(缓存)
主要用于存储小批量的数据,以<key,value>形式存储。
存数据
wx.setStorageSync('key', value);
读取数据
wx.getStorageSync('key');
文件存储
主要用于存储大批量数据,以文本或者二进制的形式存储,每个小程序可以存储200M左右的数据,采用LRU策略存储。
全局定义
const WX_DIRECTORY = `${wx.env.USER_DATA_PATH}/`; // 微信文件的根目录
const ROOT_DIRECTORY = '默认的目录';
const MAX_SIZE = 180 * 1024 * 1024; // 设置的最大存储容量180M
const KEY_CACHE_INFO = 'cache_info'; // 文件存储信息
存储信息的格式
[
{
filePath: 'A', // 在${wx.env.USER_DATA_PATH}根目录下
totalSize: 10 * 1024 * 1024, // 此目录下分配的空间大小
size: 1024 // 实际已使用大小
},
{
filePath: 'B',
totalSize: 50 * 1024 * 1024, // 50M
size: 10 * 1024 * 1024 // 10M
}
]
目录的创建
在构造函数里创建需要存储的文件目录。
如果目录不存在,需要新建目录。
已存文件读取
文件的信息,包括文件的路径、最近使用时间和文件大小。
保存文件
在指定的目录下存储数据
删除文件
读取文件
如需转载请注明原地址