linshen
5bf02fa4df
feat(ui): 收藏模块功能国际化、布局优化与组件重构
此提交包含收藏模块的国际化支持、布局和交互优化,以及核心组件的重构,以提升可维护性、用户体验和性能。
**主要特性与改进:**
1. **收藏功能国际化 (i18n):**
* 实现了收藏模块所有组件的三语言(中、英、繁)国际化支持。
* 国际化了 `CategoryTreeSelect.vue`、`FavoriteCard.vue`、`FavoriteManager.vue` 和 `SaveFavoriteDialog.vue` 中的所有硬编码文本。
* 更新了 `zh-CN.ts`、`en-US.ts` 和 `zh-TW.ts` 翻译资源,新增了必要的翻译键。
* 彻底消除了 UI 层的硬编码中文文本。
2. **收藏管理器布局与交互优化:**
* 重构 `FavoriteCard` 为固定高度网格布局,解决了卡片高度不一致问题。
* 新增 `useTooltipTheme` 工具统一 Tooltip 样式,并优化了其智能定位逻辑和空间计算。
* 实现了响应式网格布局 (移动端1列/平板2列/桌面4列),并对 `resize` 事件进行节流和缓存计算结果以优化性能。
* 改进了公开标识的可见性,使用 `NTag` 替代纯图标。
* 将 CSS `v-bind` 改为动态 `style` 绑定提升稳定性。
* `FavoriteManager` 移除了滚动容器,改为固定高度工具栏、可滚动卡片区域与固定底部分页的设计。
* 精简了视图模式,移除了列表视图,仅保留卡片视图,并删除了视图切换按钮组。
* 优化了工具栏布局为单行,左侧包含搜索/筛选/计数,右侧为操作按钮,并支持响应式设计。
* 精简了代码和依赖,删除了多余的组件导入和状态管理,减少了约 180 行代码。
* **修复:** 修复了 `FavoriteManager` 编辑对话框中 `NGrid` 和 `NGridItem` 组件缺失导入导致的运行时警告。
3. **收藏对话框组件重构:**
* 新增了 `CategoryTreeSelect` 通用组件,支持树状分类选择、内置分类管理和自动加载数据。
* 改造 `SaveFavoriteDialog` 为通用组件,支持新建/保存模式,动态标题和字段禁用逻辑,并集成了 `CategoryTreeSelect`。
* 简化了 `FavoriteManager` 组件,删除了 120 行重复代码,统一使用 `SaveFavoriteDialog` 和 `CategoryTreeSelect`。
* 遵循 DRY、KISS、YAGNI 原则,消除了约 150 行重复代码,提升了可维护性。
**Breaking Changes:**
* 收藏管理器布局从响应式 CSS Grid 改为固定网格 + 分页设计。
* 每页显示数量现在根据屏幕尺寸动态调整 (4-8项)。
* 移除了列表视图 (list view),仅保留卡片视图 (grid view)。
2025-10-18 21:43:53 +08:00
..
2025-10-18 11:25:30 +08:00
2025-10-12 22:33:59 +08:00
2025-10-12 22:33:59 +08:00
2025-08-02 20:22:48 +08:00
2025-10-18 21:43:53 +08:00
2025-10-18 11:25:30 +08:00