fix: translate error handle (#3092)

This commit is contained in:
自由的世界人 2025-03-09 21:22:08 +08:00 committed by GitHub
parent 647fa21e7c
commit 08e75c39c0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 20 additions and 10 deletions

View File

@ -103,14 +103,24 @@ const TranslatePage: FC = () => {
setLoading(true) setLoading(true)
let translatedText = '' let translatedText = ''
await fetchTranslate({ try {
message, await fetchTranslate({
assistant, message,
onResponse: (text) => { assistant,
translatedText = text onResponse: (text) => {
setResult(text) translatedText = text
} setResult(text)
}) }
})
} catch (error) {
console.error('Translation error:', error)
window.message.error({
content: String(error),
key: 'translate-message'
})
setLoading(false)
return
}
await saveTranslateHistory(text, translatedText, 'any', targetLanguage) await saveTranslateHistory(text, translatedText, 'any', targetLanguage)
setLoading(false) setLoading(false)

View File

@ -159,13 +159,13 @@ export async function fetchTranslate({ message, assistant, onResponse }: FetchTr
const model = getTranslateModel() const model = getTranslateModel()
if (!model) { if (!model) {
return '' throw new Error(i18n.t('error.provider_disabled'))
} }
const provider = getProviderByModel(model) const provider = getProviderByModel(model)
if (!hasApiKey(provider)) { if (!hasApiKey(provider)) {
return '' throw new Error(i18n.t('error.no_api_key'))
} }
const AI = new AiProvider(provider) const AI = new AiProvider(provider)