feat(P1): 智能剪辑配音支持从配音库选择 #566
Reference in New Issue
Block a user
Delete Branch "feat/smart-edit-voice-library"
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?
改动
智能剪辑(原一键生成)页面配音选择新增「从配音库选择」模式
功能
custom_audio_url将音频文件URL传给后端交互
影响范围
1个文件(GeneratePage.tsx),+155/-2
bcc8fabc0dto5043a043d5CI全绿,自动审批通过。
CI全绿,自动审批通过。
🗑️ 预览环境已清理
PR #566 已关闭或合并,对应的预览环境已被清理。
🚀 预览环境已部署
代码审查结果 - PR #566
⚠️ 问题(1个需要修改)
selectedVoiceAssetId是否为空字符串,但未检查该 ID 是否在当前的voiceAssets列表中真实存在。如果列表数据发生更新(例如删除、刷新),导致用户之前选中的 ID 失效,校验仍会通过,但后续第498行的find操作将返回undefined,导致voiceConfig.custom_audio_url未被赋值,最终发送错误的生成请求。if (voiceMode === "library" && !selectedVoiceAssetId) { ... }改为if (voiceMode === "library" && (!selectedVoiceAssetId || !voiceAssets.find(a => a.id === selectedVoiceAssetId))) { ... }。💡 建议(1个可选)
voiceAssets数组对象。如果该依赖项所属的useEffect或useCallback仅用于计算预览文本或状态同步,建议仅依赖voiceAssets.length或selectedVoiceAssetId,避免因数组引用变化(即使数据未变)导致不必要的回调或副作用重新执行。✅ 格式检查通过 | ❌ 逻辑审查需修改 | ✅ 性能无明显问题
🤖 由 AI 代码审查机器人自动生成 | 2026-07-19 10:55:27 | 模型:
🗑️ 预览环境已清理
PR #566 已关闭或合并,对应的预览环境已被清理。