refactor(storage): 迁移 AsyncStorage 至 expo-sqlite/kv-store

- 统一替换所有 @react-native-async-storage/async-storage 导入为自定义 kvStore
- 新增 kvStore.ts 封装 expo-sqlite/kv-store,保持与 AsyncStorage 完全兼容
- 新增同步读写方法,提升性能
- 引入 expo-sqlite 依赖并更新 lock 文件

BREAKING CHANGE: 移除 @react-native-async-storage/async-storage 依赖,需重新安装依赖并清理旧数据
This commit is contained in:
richarjiang
2025-09-15 12:51:18 +08:00
parent 91df01bd79
commit 2357596665
20 changed files with 68 additions and 17 deletions

21
package-lock.json generated
View File

@@ -40,6 +40,7 @@
"expo-quick-actions": "^5.0.0",
"expo-router": "~6.0.4",
"expo-splash-screen": "~31.0.8",
"expo-sqlite": "^16.0.8",
"expo-status-bar": "~3.0.7",
"expo-symbols": "~1.0.6",
"expo-system-ui": "~6.0.7",
@@ -5578,6 +5579,12 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/await-lock": {
"version": "2.2.2",
"resolved": "https://mirrors.tencent.com/npm/await-lock/-/await-lock-2.2.2.tgz",
"integrity": "sha512-aDczADvlvTGajTDjcjpJMqRkOF6Qdz3YbPZm/PyW6tKPkx2hlYBzxMhEywM/tU72HrVZjgl5VCdRuMlA7pZ8Gw==",
"license": "MIT"
},
"node_modules/babel-jest": {
"version": "29.7.0",
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
@@ -8139,6 +8146,20 @@
"expo": "*"
}
},
"node_modules/expo-sqlite": {
"version": "16.0.8",
"resolved": "https://mirrors.tencent.com/npm/expo-sqlite/-/expo-sqlite-16.0.8.tgz",
"integrity": "sha512-xw776gFgH4ZM5oGs0spSLNmkHO/kJ/EuRXGzE4/22yII9EmG84vm7aM/M2aEb8taBTqwhSGYUpkwkRT5YFFmsg==",
"license": "MIT",
"dependencies": {
"await-lock": "^2.2.2"
},
"peerDependencies": {
"expo": "*",
"react": "*",
"react-native": "*"
}
},
"node_modules/expo-status-bar": {
"version": "3.0.7",
"resolved": "https://registry.npmjs.org/expo-status-bar/-/expo-status-bar-3.0.7.tgz",