This commit is contained in:
zhangjianjun 2026-04-01 17:45:24 +08:00
parent 41ee8c5305
commit 53bafd40b5
1 changed files with 10 additions and 5 deletions

View File

@ -43,7 +43,9 @@
<el-tabs v-if="langKeys.length" v-model="activeTab" type="border-card" <el-tabs v-if="langKeys.length" v-model="activeTab" type="border-card"
v-loading="translating" element-loading-text="正在翻译中..." v-loading="translating" element-loading-text="正在翻译中..."
element-loading-background="rgba(255,255,255,0.8)"> element-loading-background="rgba(255,255,255,0.8)"
@tab-change="handleTabChange"
>
<el-tab-pane v-for="lang in langKeys" :key="lang" :label="lang" :name="lang"> <el-tab-pane v-for="lang in langKeys" :key="lang" :label="lang" :name="lang">
<el-scrollbar max-height="60vh"> <el-scrollbar max-height="60vh">
<div class="jfd-content"> <div class="jfd-content">
@ -57,8 +59,6 @@
<el-empty v-else description="无数据" /> <el-empty v-else description="无数据" />
<template #footer> <template #footer>
<el-button v-if="activeTab === 'EN'" type="success" title="不覆盖翻译后的数据从ZH补全"
@click="handleCompleteData">补全数据</el-button>
<el-button v-if="activeTab === 'EN'" type="warning" :loading="translating" <el-button v-if="activeTab === 'EN'" type="warning" :loading="translating"
@click="handleTranslateAll">一键翻译</el-button> @click="handleTranslateAll">一键翻译</el-button>
<el-button @click="close">取消</el-button> <el-button @click="close">取消</el-button>
@ -198,15 +198,20 @@ function delay(ms: number) {
return new Promise(resolve => setTimeout(resolve, ms)) return new Promise(resolve => setTimeout(resolve, ms))
} }
function handleTabChange(tab: string) {
if (tab !== 'ZH') {
handleCompleteData()
}
}
function handleCompleteData() { function handleCompleteData() {
if (!formData.value.ZH) return if (!formData.value.ZH) return
if (!formData.value.EN) { if (!formData.value.EN) {
formData.value.EN = JSON.parse(JSON.stringify(formData.value.ZH)) formData.value.EN = JSON.parse(JSON.stringify(formData.value.ZH))
ElMessage.success('补全完成') // ElMessage.success('')
return return
} }
completeFromSource(formData.value.EN, formData.value.ZH) completeFromSource(formData.value.EN, formData.value.ZH)
ElMessage.success('补全完成') // ElMessage.success('')
} }
function completeFromSource(target: any, source: any) { function completeFromSource(target: any, source: any) {