fix: translate error handle (#3092)
This commit is contained in:
parent
647fa21e7c
commit
08e75c39c0
@ -103,14 +103,24 @@ const TranslatePage: FC = () => {
|
||||
|
||||
setLoading(true)
|
||||
let translatedText = ''
|
||||
await fetchTranslate({
|
||||
message,
|
||||
assistant,
|
||||
onResponse: (text) => {
|
||||
translatedText = text
|
||||
setResult(text)
|
||||
}
|
||||
})
|
||||
try {
|
||||
await fetchTranslate({
|
||||
message,
|
||||
assistant,
|
||||
onResponse: (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)
|
||||
setLoading(false)
|
||||
|
||||
@ -159,13 +159,13 @@ export async function fetchTranslate({ message, assistant, onResponse }: FetchTr
|
||||
const model = getTranslateModel()
|
||||
|
||||
if (!model) {
|
||||
return ''
|
||||
throw new Error(i18n.t('error.provider_disabled'))
|
||||
}
|
||||
|
||||
const provider = getProviderByModel(model)
|
||||
|
||||
if (!hasApiKey(provider)) {
|
||||
return ''
|
||||
throw new Error(i18n.t('error.no_api_key'))
|
||||
}
|
||||
|
||||
const AI = new AiProvider(provider)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user