fix(title): 预设样式解耦字号 + 右侧标题实时预览 #1232
Reference in New Issue
Block a user
Delete Branch "fix/title-preset-decouple-and-preview"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
修改内容
任务1:预设样式不再绑定字号
useTitleStyleUpdaters.tsapplyPreset:去掉size: preset.style.size,预设只覆盖 color/bold/italic/stroke/shadow,字号保持不变getActivePreset:匹配条件去掉settings.size === p.style.size,只用 color/bold/italic/stroke/shadow 匹配预设constants.ts中 TITLE_PRESETS 的 style.size 保留作为推荐字号(初始值),不变任务2:标题选择后实时预览
PreviewVideoPanel.tsxtitleText: string、titleSettings: TitleSettingsGeneratePage.tsxtitleText={titleSettings.title}和titleSettings={titleSettings}验收
🚀 预览环境已部署
CI全绿,自动审批通过。
CI全绿,自动审批通过。
代码审查结果 - PR #1232
⚠️ 问题(1个需要修改)
fontSize计算存在逻辑漏洞。当settings.size为undefined或null时(例如titleSettings为空对象{}或初始化不完整),Math.min(undefined, 36)返回NaN,导致字体样式失效,文字可能不可见或异常。应增加默认值处理(如settings.size || 16)。💡 建议(2个可选)
showTitlePreview的判断条件!!titleSettings过于宽松。如果传入空对象{},条件依然为真,但后续渲染可能出错。建议增加对关键字段(如size)的检查,或者确保父组件传入的titleSettings结构完整。positionAlignStyle函数中使用了魔法数字(如paddingTop: 16),建议提取为常量以提高代码可维护性。✅ 格式检查通过 | ❌ 逻辑审查需修改 | ✅ 性能良好
🤖 由 AI 代码审查机器人自动生成 | 2026-08-04 02:06:16 | 模型:
🗑️ 预览环境已清理
PR #1232 已关闭或合并,对应的预览环境已被清理。