setStorageSync 是 uni-app 中用于同步存储数据的 API,将数据保存在本地缓存中。它属于同步操作,会阻塞后续代码执行直到存储完成。
基本语法
uni.setStorageSync(key, data)
参数说明
key (string): 存储的键名
data (any): 要存储的数据,支持字符串、数字、对象、数组等
使用示例
1. 存储字符串
uni.setStorageSync('username', '张三')
2. 存储对象
const userInfo = {
name: '李四',
age: 25,
city: '北京'
}
uni.setStorageSync('userInfo', userInfo)
3. 存储数组
const cartList = ['商品A', '商品B', '商品C']
uni.setStorageSync('shoppingCart', cartList)
读取数据
使用 getStorageSync 读取:
const username = uni.getStorageSync('username')
const userInfo = uni.getStorageSync('userInfo')
console.log(username) // 输出:张三
注意事项
- 同步特性:会阻塞后续代码,适合小数据量存储
- 数据大小:单个 key 允许存储的最大数据长度为 1MB
- 异常处理:使用 try-catch 捕获可能的错误
try {
uni.setStorageSync('key', 'data')
} catch (e) {
console.error('存储失败:', e)
}
异步版本
如需异步操作,可使用 setStorage:
uni.setStorage({
key: 'username',
data: '王五',
success: function() {
console.log('存储成功')
}
})
这个 API 常用于保存用户登录状态、应用配置等需要持久化的数据。