数据缓存
轻应用可以通过下面列出的API读取、写入、删除、清理本地缓存数据,与 LocalStorage 类似。本地数据缓存暂无法在用户侧手动清除,因此需要开发者使用以下 API 自行管理应用的本地数据缓存空间。
本地缓存数据以用户+轻应用维度隔离,同一台设备上,不同用户之间、不同轻应用之间,本地缓存数据不可互访。
database数据库
database数据库是通过SQL操作数据库
由于共享内存的大小限制为2MB,因此单条数据的大小也必须严格小于2MB
database.executeUpdate
调用qt.database.executeUpdate,执行数据库的创建表及表的增删改操作。
由于不同机型的js传输限制,sql不要传的太长。
qt.database.executeUpdate({
sql: 'CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER)'
});matAddr: false,
});
database.executeQuery
调用qt.database.executeQuery,执行数据库的查询操作,success返回的数据是数组
qt.database.executeQuery({
sql: "SELECT * FROM user",
});
参数说明
| 参数 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| sql | string | 是 | 需要执行的sql字符串 |
返回说明
| 参数 | 类型 | 说明 |
|---|---|---|
| result | array | 查询的结果,例如[{"id":1,"name":"阳君","age":18}] |
storage数据库
storage数据库是通过Key-Value操作数据库
storage.setItem
调用qt.storage.setItem,将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的数据。
qt.storage.setItem({
key: "currentCity",
data: "重庆", // 只支持字符串
});
参数说明
| 参数 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| key | string | 是 | 存储的key | |
| data | string | 是 | 存储的key对应的数据 |
storage.removeItem
调用qt.storage.removeItem,删除缓存数据。
qt.storage.removeItem(key);
storage.clear
调用qt.storage.clear,清除本地缓存数据。
qt.storage.clear();
storage.getItem
调用storage.getItem,获取缓存数据,可以获取指定key的单条缓存数据。
qt.storage.getItem({
key: "key1",
});
返回说明
| 参数 | 类型 | 说明 |
|---|---|---|
| data | string | key对应的缓存值 |
storage.getInfo
调用qt.storage.getInfo,获取当前storage的相关信息。
qt.storage.getInfo({
success: function (res) {
// { "keys": [`keys示例值1`, `keys示例值2`]}
},
});
返回说明
| 参数 | 类型 | 说明 |
|---|---|---|
| keys | array[string] | 缓存的所有key |