mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2026-01-09 14:59:27 +08:00
fix(translate): don't use stale state when saving translate history (#9049)
fix(translate): 修复从store获取过时状态的问题
This commit is contained in:
parent
5713a278cd
commit
08457055b0
@ -12,7 +12,7 @@ import { useDefaultModel } from '@renderer/hooks/useAssistant'
|
|||||||
import useTranslate from '@renderer/hooks/useTranslate'
|
import useTranslate from '@renderer/hooks/useTranslate'
|
||||||
import { estimateTextTokens } from '@renderer/services/TokenService'
|
import { estimateTextTokens } from '@renderer/services/TokenService'
|
||||||
import { saveTranslateHistory, translateText } from '@renderer/services/TranslateService'
|
import { saveTranslateHistory, translateText } from '@renderer/services/TranslateService'
|
||||||
import store, { useAppDispatch, useAppSelector } from '@renderer/store'
|
import { useAppDispatch, useAppSelector } from '@renderer/store'
|
||||||
import { setTranslating as setTranslatingAction } from '@renderer/store/runtime'
|
import { setTranslating as setTranslatingAction } from '@renderer/store/runtime'
|
||||||
import { setTranslatedContent as setTranslatedContentAction } from '@renderer/store/translate'
|
import { setTranslatedContent as setTranslatedContentAction } from '@renderer/store/translate'
|
||||||
import type { Model, TranslateHistory, TranslateLanguage } from '@renderer/types'
|
import type { Model, TranslateHistory, TranslateLanguage } from '@renderer/types'
|
||||||
@ -117,8 +117,9 @@ const TranslatePage: FC = () => {
|
|||||||
|
|
||||||
setTranslating(true)
|
setTranslating(true)
|
||||||
|
|
||||||
|
let translated
|
||||||
try {
|
try {
|
||||||
await translateText(text, actualTargetLanguage, throttle(setTranslatedContent, 100))
|
translated = await translateText(text, actualTargetLanguage, throttle(setTranslatedContent, 100))
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
logger.error('Failed to translate text', e as Error)
|
logger.error('Failed to translate text', e as Error)
|
||||||
window.message.error(t('translate.error.failed' + ': ' + (e as Error).message))
|
window.message.error(t('translate.error.failed' + ': ' + (e as Error).message))
|
||||||
@ -129,13 +130,7 @@ const TranslatePage: FC = () => {
|
|||||||
window.message.success(t('translate.complete'))
|
window.message.success(t('translate.complete'))
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const translatedContent = store.getState().translate.translatedContent
|
await saveTranslateHistory(text, translated, actualSourceLanguage.langCode, actualTargetLanguage.langCode)
|
||||||
await saveTranslateHistory(
|
|
||||||
text,
|
|
||||||
translatedContent,
|
|
||||||
actualSourceLanguage.langCode,
|
|
||||||
actualTargetLanguage.langCode
|
|
||||||
)
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
logger.error('Failed to save translate history', e as Error)
|
logger.error('Failed to save translate history', e as Error)
|
||||||
window.message.error(t('translate.history.error.save') + ': ' + (e as Error).message)
|
window.message.error(t('translate.history.error.save') + ': ' + (e as Error).message)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user