Files
prompt-optimizer/packages/web
Johnnyandlinshen 6f490b36ed feat(template): 修复在切换模板语言后,模板选择器不响应式更新 (#120)
* feat(template): 修复在切换模板语言后,模板选择器不响应式更新

- 在关闭模板管理后,对模板选择器的模板列表进行更新
- 在模板选择器中,对展示的模板进行更新

* fix(template): 修复数组内容深度比较和代码冗余问题

- 修复 BugBot 发现的模板内容数组引用比较问题
  * 实现 deepCompareTemplateContent 函数支持 string/Array 类型深度比较
  * 避免数组引用相同但内容不同时的错误判断
  * 防止数组内容相同但引用不同时的不必要更新

- 消除父子组件间的代码冗余
  * 移除 App.vue 中重复的模板更新逻辑
  * 明确职责分工:子组件负责刷新逻辑,父组件负责触发时机
  * 通过 v-model 实现状态同步,避免双重更新

- 完善组件接口和文档
  * 正确暴露 TemplateSelect 组件的 refresh 方法
  * 添加详细的职责分工注释和使用说明
  * 更新 experience.md 记录此次重要修复

解决的问题:
- Template Update Logic Fails
- Deep Array Comparison Bug
- Array Comparison Bug Causes Unnecessary Updates
- Template Selector Update Method Mismatch

测试状态: 所有核心功能测试通过

* fix(template): 修复模板选择器类型过滤器验证问题

- 修复 BugBot 发现的模板类型过滤器忽略问题
  * 在 refreshTemplates 函数中添加类型验证逻辑
  * 确保更新后的模板匹配当前组件的类型过滤器
  * 避免选择不匹配类型的模板导致的显示错误

解决问题: Template Selection Ignores Type Filter
测试状态:  UI 组件测试全部通过 (23/23)

---------

Co-authored-by: linshen <32978552+linshenkx@users.noreply.github.com>
2025-06-27 09:43:28 +08:00
..