优化: 将本地存储从localStorage迁移至IndexedDB以支持更大数据量存储

This commit is contained in:
yuantao
2025-10-17 10:17:49 +08:00
parent ae375aee8c
commit 0a89eda20b
9 changed files with 505 additions and 530 deletions

View File

@@ -12,7 +12,7 @@
* **路由**: Vue Router
* **UI 组件库**: Ionic Vue (部分使用)
* **PWA 支持**: vite-plugin-pwa
* **本地存储**: localStorage (通过 `src/utils/storage.js` 封装)
* **本地存储**: IndexedDB (通过 `src/utils/indexedDBStorage.js` 封装)
* **CSS 预处理器**: Less
## 项目结构
@@ -45,7 +45,7 @@
* **回收站**: 临时存储已删除的便签,支持彻底删除。
* **多种排序方式**: 按更新时间、标题、星标状态排序。
* **PWA 支持**: 可安装为独立应用,支持离线使用。
* **本地存储**: 所有数据存储在浏览器的 `localStorage` 中。
* **本地存储**: 所有数据存储在浏览器的 `IndexedDB` 中。
* **深色模式**: (计划中) 支持切换深色/浅色主题。
* **云同步**: (计划中) 支持多设备间数据同步。
@@ -118,7 +118,7 @@ npm run android
* **路由**: Vue Router
* **UI 组件库**: Ionic Vue (部分使用)
* **PWA 支持**: vite-plugin-pwa
* **本地存储**: localStorage (通过 `src/utils/storage.js` 封装)
* **本地存储**: IndexedDB (通过 `src/utils/indexedDBStorage.js` 封装)
* **CSS 预处理器**: Less
* **CSS 命名**: 使用 BEM 命名规范,部分使用原子化 CSS 类名(以 `code-fun-` 开头)
* **响应式设计**: 使用 viewport 单位 (vw/vh) 和 CSS 变量实现响应式布局
@@ -149,7 +149,7 @@ npm run android
* Store 文件中按照 state, getters, actions 的顺序组织代码
* 异步操作使用 `async/await` 语法
* **工具函数**:
* 工具函数按功能模块划分文件,如 `storage.js`, `dateUtils.js`
* 工具函数按功能模块划分文件,如 `indexedDBStorage.js`, `dateUtils.js`
* 工具函数使用 `export const` 导出
### 注释规范