Kutumia TacoTranslate
Kutafsiri mifadilio
Kwa sasa kuna njia tatu za kutafsiri mistari: Sehemu ya Translate
, hook ya useTranslation
, au matumizi ya translateEntries
.
Kutumia sehemu ya Translate
.
Hutoa tafsiri ndani ya elementi ya span
, na inasaidia uonyesho wa HTML.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Unaweza kubadilisha aina ya sehemu kwa kutumia, kwa mfano, as="p"
kwenye sehemu.
Kutumia useTranslation
hook.
Inarudisha tafsiri kama mnyororo wa maandishi wazi. Inafaa kwa, kwa mfano, lebo za meta
.
import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';
function Page() {
const helloWorld = useTranslation('Hello, world!');
useEffect(() => {
alert(helloWorld);
}, [helloWorld]);
return (
<title>{useTranslation('My page title')}</title>
);
}
Kutumia zana ya translateEntries
Tafsiri mistari upande wa seva. Inua nguvu picha zako za OpenGraph.
import {createEntry, translateEntries} from 'tacotranslate';
async function generateMetadata(locale = 'es') {
const title = createEntry({string: 'Hello, world!'});
const description = createEntry({string: 'TacoTranslate on the server'});
const translations = await translateEntries(
tacoTranslate,
{origin: 'opengraph', locale},
[title, description]
);
return {
title: translations(title),
description: translations(description)
};
}
Jinsi mfululizo wa maneno unavyotafsiriwa
Wakati mistari inafikia seva zetu, tunawaangalia kwanza na kuihifadhi, kisha tunarudisha mara moja tafsiri ya mashine. Ingawa tafsiri za mashine kwa ujumla huwa na ubora mdogo ikilinganishwa na tafsiri zetu za AI, hutoa jibu la haraka la awali.
Wakati huo huo, tunaanzisha kazi ya tafsiri isiyo ya mara moja ili kuunda tafsiri ya AI yenye ubora wa hali ya juu, ya kisasa kwa mfuatano wako. Mara tafsiri ya AI itakapo kuwa tayari, itachukua nafasi ya tafsiri ya mashine na itatumwa kila unapoomba tafsiri za mfuatano wako.
Iwapo umefasiri kamba mwenyewe, tafsiri hizo zinapata kipaumbele na hurejeshwa badala yake.
Kutumia asili
Miradi ya TacoTranslate yanajumuisha kile tunachokiita asili. Fikiria kama ni njia za kuingilia, folda, au makundi ya mistari yako na tafsiri zako.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Asili hukuruhusu kutenganisha mistari katika makontena yenye maana. Kwa mfano, unaweza kuwa na asili moja kwa ajili ya nyaraka na nyingine kwa ukurasa wako wa masoko.
Kwa udhibiti wa kina zaidi, unaweza kuweka origins katika ngazi ya kipengele.
Ili kufanikisha hili, fikiria kutumia watoa huduma mbalimbali wa TacoTranslate ndani ya mradi wako.
Tafadhali kumbuka kuwa kamba ile ile inaweza kupokea tafsiri tofauti katika asili tofauti.
Mwishowe, namna unavyogawanya mfululizo wa maneno katika asili ni kwako na mahitaji yako. Hata hivyo, kumbuka kuwa kuwa na mfululizo wa maneno mengi ndani ya asili moja kunaweza kuongeza muda wa upakiaji.
Kushughulikia vigezo
Unapaswa kila wakati kutumia vigezo kwa maudhui ya mabadiliko, kama vile majina ya watumiaji, tarehe, anwani za barua pepe, na zaidi.
Mabadiliko katika mategemeo hutangazwa kwa kutumia mabano mara mbili, kama {{variable}}
.
import {Translate} from 'tacotranslate/react';
function Greeting() {
const name = 'Juan';
return <Translate string="Hello, {{name}}!" variables={{name}} />;
}
import {useTranslation} from 'tacotranslate/react';
function useGreeting() {
const name = 'Juan';
return useTranslation('Hello, {{name}}!', {variables: {name}});
}
Kusimamia maudhui ya HTML
Kwa chaguo-msingi, sehemu ya Translate
inaunga mkono na kuonyesha maudhui ya HTML. Hata hivyo, unaweza kukataa tabia hii kwa kuweka useDangerouslySetInnerHTML
kuwa false
.
Kuzima uwasilishaji wa HTML kunapendekezwa sana wakati wa kutafsiri maudhui ambayo hayawezi kuaminiwa, kama vile yaliyotengenezwa na watumiaji.
Matokeo yote huwa yanasafishwa kwa kutumia sanitize-html kabla ya kuonyeshwa.
import {Translate} from 'tacotranslate/react';
function Page() {
return (
<Translate
string={`
Welcome to <strong>my</strong> website.
I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
`}
variables={{url: 'https://tacotranslate.com'}}
useDangerouslySetInnerHTML={false}
/>
);
}
Mfano uliotajwa hapo juu utaonyeshwa kama maandishi ya kawaida.