优化完善替换角色

This commit is contained in:
Azmat@qq.com
2026-09-01 18:29:36 +08:00
parent 0603a85d83
commit 1825543873
4 changed files with 64 additions and 121 deletions
+23 -19
View File
@@ -106,10 +106,6 @@ const REPLACE_MODE_COPY = {
drawerEmpty: "还没有人物,先去模特库添加",
historyKind: "角色",
pickToast: "已选择角色",
briefStep: "3. 角色信息",
briefOptional: "选填",
briefPlaceholder: "例:30 岁左右男性,短发,深色衬衫,气质干练利落",
briefHint: "写明目标角色是男或女时,系统会自动使用对应的通用声音参考;未写明则保留参考视频原声。",
},
} as const;
@@ -1239,22 +1235,30 @@ export function VideoReplacePage({
</div>
</div>
<div className="video-flow-step">
<div className="video-flow-step-head">
<strong>{copy.briefStep}</strong>
<span>{copy.briefOptional}</span>
{replaceMode === "product" ? (
<div className="video-flow-step">
<div className="video-flow-step-head">
<strong>{REPLACE_MODE_COPY.product.briefStep}</strong>
<span>{REPLACE_MODE_COPY.product.briefOptional}</span>
</div>
<textarea
className="textarea replace-brief-input"
value={subjectBrief}
maxLength={SUBJECT_BRIEF_MAX}
placeholder={REPLACE_MODE_COPY.product.briefPlaceholder}
disabled={generating}
aria-label={REPLACE_MODE_COPY.product.briefStep}
onChange={(event) => updateCurrentForm({ subjectBrief: event.target.value })}
/>
<p className="field-hint replace-brief-hint">{REPLACE_MODE_COPY.product.briefHint}</p>
</div>
<textarea
className="textarea replace-brief-input"
value={subjectBrief}
maxLength={SUBJECT_BRIEF_MAX}
placeholder={copy.briefPlaceholder}
disabled={generating}
aria-label={copy.briefStep}
onChange={(event) => updateCurrentForm({ subjectBrief: event.target.value })}
/>
<p className="field-hint replace-brief-hint">{copy.briefHint}</p>
</div>
) : (
<div className="tip replace-limit-tip" role="note">
<strong></strong>
</div>
)}
<div className="video-flow-actions replace-generate-action">
<button