fix(P1): 修复视频库左侧列表显示配音库 - 去掉voice→video硬映射 (#564) #570
Reference in New Issue
Block a user
Delete Branch "fix/asset-library-voice-kind-mapping"
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?
问题
#564 - 视频库左侧列表里配音素材库还在显示,#562加了kind===video过滤但没生效
根因
AssetLibrary.tsx第145行mapLibrary函数里有历史兼容代码:把配音库的kind硬映射成了video,导致下游
lib.kind === "video"过滤拦不住。修复
直接去掉
item.kind === "voice" ? "video" :这个三元映射,让kind保持后端返回的原值,filter自然生效。改动
🚀 预览环境已部署
CI全绿,自动审批通过。
CI全绿,自动审批通过。
🗑️ 预览环境已清理
PR #570 已关闭或合并,对应的预览环境已被清理。
代码审查结果 - PR #570
⚠️ 问题(2个需要修改)
inferKind("video")参数传递错误。inferKind函数期望接收 MIME 类型字符串(如 "video/mp4"),但此处传递了字面量字符串 "video"。由于 "video" 不以 "video/" 开头,该函数会返回 "image"。这意味着当item.kind为空时,所有资产都会被错误地归类为图片,而不是根据实际的 MIME 类型推断。inferKind函数存在空指针风险。如果入参mimeType为null或undefined,调用startsWith方法会导致运行时报错。建议增加空值检查(如mimeType?.startsWith(...))。💡 建议(1个可选)
item.kind === "voice" ? "video" : item.kind的强制转换,改为直接使用item.kind。请确保后端 API 返回的kind字段值已更新为"voice"(而非"audio"),否则会导致图标和标签无法匹配。✅ 格式检查通过 | ❌ 逻辑审查需修改 | ✅ 性能无明显问题
🤖 由 AI 代码审查机器人自动生成 | 2026-07-19 11:06:23 | 模型: