fix: 更新 features 测试断言以匹配新增的 testDataGenerator

fix: 修复测试数据生成器多项代码问题
- useCallback 闭包问题:改用函数式 setFields 更新,避免依赖过时引用
- Worker 复用:复用已有 Worker 而非每次 generate 都销毁重建
- 导出复制反馈:复制操作完成后添加 toast 成功/失败提示
- 字段名校验:添加空值、非法字符、重复名称校验
- i18n 硬编码:GeneratorConfig 和 ruleStorage 统一使用 t() 函数
This commit is contained in:
雨霖铃
2026-06-06 23:33:12 +08:00
parent 6c7b7294b4
commit 9a0c8ba850
10 changed files with 154 additions and 67 deletions
+4 -2
View File
@@ -138,8 +138,10 @@ export function deleteRule(id: string): boolean {
/**
* 复制规则
* @param id 规则 ID
* @param copySuffix 复制后缀,默认为中文「(副本)」,可通过 i18n 传入
*/
export function duplicate(id: string): DataRule | null {
export function duplicate(id: string, copySuffix = '(副本)'): DataRule | null {
const rule = getById(id);
if (!rule) {
console.warn('[ruleStorage] 规则不存在:', id);
@@ -155,7 +157,7 @@ export function duplicate(id: string): DataRule | null {
const newRule: DataRule = {
...rule,
id: generateId(),
name: `${rule.name}(副本)`,
name: `${rule.name}${copySuffix}`,
createdAt: now,
updatedAt: now,
useCount: 0,