From 006e85c23dbf31357ab42b483cbe14493766b71c Mon Sep 17 00:00:00 2001 From: hansas <13600156+hansas@user.noreply.gitee.com> Date: Fri, 12 Sep 2025 15:30:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=97=A0=E6=B3=95=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E9=9F=B3=E9=A2=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pc/article/components/EditArticle.vue | 40 +++++++++++++++++-- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/src/pages/pc/article/components/EditArticle.vue b/src/pages/pc/article/components/EditArticle.vue index 38402c11..265daa0b 100644 --- a/src/pages/pc/article/components/EditArticle.vue +++ b/src/pages/pc/article/components/EditArticle.vue @@ -147,7 +147,7 @@ function save(option: 'save' | 'saveAndNext') { let d = cloneDeep(editArticle) if (!d.id) d.id = nanoid(6) delete d.sections - copy(console.json(d, 2)) + copy(JSON.stringify(d, null, 2)) const saveTemp = () => { emit(option as any, editArticle) return resolve(true) @@ -160,9 +160,31 @@ function save(option: 'save' | 'saveAndNext') { //不知道为什么直接用editArticle,取到是空的默认值 defineExpose({save, getEditArticle: () => cloneDeep(editArticle)}) -function handleChange(e: any) { +// 处理音频文件上传 +function handleAudioChange(e: any) { + // 获取上传的文件 let uploadFile = e.target?.files?.[0] if (!uploadFile) return + + // 创建一个临时的URL以访问文件 + const audioURL = URL.createObjectURL(uploadFile) + + // 设置音频源 + editArticle.audioSrc = audioURL + + // 重置input,确保即使选择同一个文件也能触发change事件 + e.target.value = '' + + Toast.success('音频添加成功') +} + +// 处理LRC文件上传 +function handleChange(e: any) { + // 获取上传的文件 + let uploadFile = e.target?.files?.[0] + if (!uploadFile) return + + // 读取文件内容 let reader = new FileReader(); reader.readAsText(uploadFile, 'UTF-8'); reader.onload = function (e) { @@ -189,9 +211,14 @@ function handleChange(e: any) { return w.audioPosition ?? [] }) }).flat() + + Toast.success('LRC文件解析成功') } } } + + // 重置input,确保即使选择同一个文件也能触发change事件 + e.target.value = '' } let currentSentence = $ref({} as any) @@ -385,10 +412,17 @@ function setStartTime(val: Sentence, i: number, j: number) {
结果
正文、译文与结果均可编辑,编辑后点击应用按钮会自动同步
- 添加音频 +
+ 添加音频 + +
添加音频LRC文件