选中 {{ selectedRegions.length }} 个大区,将翻译以下 {{ selectedLanguages.length }} 种语言:
@@ -112,7 +144,8 @@
-
-
-
- 共 {{ sentences.filter(Boolean).length }} 句 · 选择 {{ selectedRegions.length }} 个大区 · {{
- selectedLanguages.length }} 种语言
-
-
-
-
+
+
+
+ 共 {{ sentences.filter(Boolean).length }} 句 · 选择 {{ selectedRegions.length }} 个大区 · {{
+ selectedLanguages.length }} 种语言
+
+
+
+
+
@@ -180,6 +214,7 @@ const REGION_LIST = getRegions()
const sentences = ref([''])
const bulkText = ref('')
+const inputMode = ref('bulk') // 'bulk' 或 'individual'
const selectedRegions = ref([])
const translations = ref({})
const activeTab = ref('')
@@ -262,6 +297,7 @@ function loadFromStorage() {
if (data.translations) translations.value = data.translations
if (typeof data.needTranslate === 'boolean') needTranslate.value = data.needTranslate
if (data.activeTab) activeTab.value = data.activeTab
+ if (data.inputMode) inputMode.value = data.inputMode
} catch (e) {
console.error('加载本地数据失败:', e)
}
@@ -275,6 +311,7 @@ function saveToStorage() {
translations: translations.value,
needTranslate: needTranslate.value,
activeTab: activeTab.value,
+ inputMode: inputMode.value,
}))
}
@@ -285,6 +322,17 @@ const addSentence = () => {
sentences.value.push('')
}
+const updateSentence = (value, index) => {
+ sentences.value[index] = value
+}
+
+const removeSentence = (index) => {
+ sentences.value.splice(index, 1)
+ if (sentences.value.length === 0) {
+ sentences.value.push('')
+ }
+}
+
const handlePaste = (e) => {
// e.preventDefault() handled by Vue if needed but standard logic applies
// We can rely on @paste event
@@ -397,6 +445,7 @@ const handleTranslate = async () => {
try {
const result = await window.electronAPI.translate(joinedText, lang)
if (result.success) {
+ console.log(`翻译结果完整 ${lang} 成功:`, result)
let translatedLines = result.result.split('\n').map(s => s.trim())
if (translatedLines.length > 0) {
diff --git a/src/components/Sidebar.vue b/src/components/Sidebar.vue
index 0a287f3..cc8c195 100644
--- a/src/components/Sidebar.vue
+++ b/src/components/Sidebar.vue
@@ -133,20 +133,29 @@
已打招呼
{{ greetingStats.greetingCount }} 位
已回复
+
-
+
{{ greetingStats.replyCount || 0 }} 条
+
已邀请
+
+
+ {{ greetingStats.inviteCount || 0 }} 个
+
+