* 升级备份数据 * * 升级前: 把所有备份都存到一个持久化空间 * 升级后: 把每个备份都独立存到一个空间, `$.KEY_backups` 仅记录必要的数据索引
()
| 1138 | * 升级后: 把每个备份都独立存到一个空间, `$.KEY_backups` 仅记录必要的数据索引 |
| 1139 | */ |
| 1140 | function upgradeGlobalBaks() { |
| 1141 | let oldbaks = $.getdata($.KEY_globalBaks) |
| 1142 | let newbaks = $.getjson($.KEY_backups, []) |
| 1143 | const isEmpty = (bak) => [undefined, null, ''].includes(bak) |
| 1144 | const isExistsInNew = (backupId) => newbaks.find((bak) => bak.id === backupId) |
| 1145 | |
| 1146 | // 存在旧备份数据时, 升级备份数据格式 |
| 1147 | if (!isEmpty(oldbaks)) { |
| 1148 | oldbaks = JSON.parse(oldbaks) |
| 1149 | oldbaks.forEach((bak) => { |
| 1150 | if (isEmpty(bak)) return |
| 1151 | if (isEmpty(bak.bak)) return |
| 1152 | if (isExistsInNew(bak.id)) return |
| 1153 | |
| 1154 | console.log(`正在迁移: ${bak.name}`) |
| 1155 | const backupId = bak.id |
| 1156 | const backupData = bak.bak |
| 1157 | |
| 1158 | // 删除旧的备份数据, 仅保留索引信息 |
| 1159 | delete bak.bak |
| 1160 | newbaks.push(bak) |
| 1161 | |
| 1162 | // 提取旧备份数据, 存入独立的持久化空间 |
| 1163 | $.setjson(backupData, backupId) |
| 1164 | }) |
| 1165 | $.setjson(newbaks, $.KEY_backups) |
| 1166 | } |
| 1167 | |
| 1168 | // 清空所有旧备份的数据 |
| 1169 | $.setdata('', $.KEY_globalBaks) |
| 1170 | } |
| 1171 | |
| 1172 | function updateCurSesssions(appId, data) { |
| 1173 | if (!appId) { |
no test coverage detected