د TacoTranslate کارول
د تارونو ژباړل
اوس مهال درې لارې شته چې لیکې وژباړل شي: د Translate
کامپونټ، د useTranslation
هوک، یا د translateEntries
وسیله.
د Translate
کمپونینټ کارول.
ژباړې د span
عنصر کې وړاندې کوي، او د HTML رینډر کولو ملاتړ کوي.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
تاسو کولی شئ د عنصر ډول د بیلګې په توګه د کمپونینټ په باندې as="p"
بدل کړئ.
د useTranslation
هک کارول.
ژباړې د ساده متني شکل په توګه بېرته ورکوي. په بېلګه توګه، په 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>
);
}
د translateEntries
وسیلې کارول.
په سرور اړخ کې تارونه وژباړئ. خپل 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)
};
}
څنګه تارونه ژباړل کېږي
کله چې تارونه زموږ سرورونو ته ورسیږي، نو لومړی یې تایید او زیرمه کوو، بیا سملاسي د ماشيني ژباړې نتیجه بېرته ورکول کېږي. که څه هم د ماشيني ژباړې کیفیت معمولاً زموږ د AI ژباړو په پرتله ټیټ وي، خو دوی چټک لومړنی ځواب وړاندې کوي.
په عین وخت کې، موږ یو غیرهمزمان ژباړې کار پیل کوو ترڅو ستاسو د تار لپاره لوړ کیفیت، عصري AI ژباړه تولید کړو. کله چې AI ژباړه چمتو شي، دا به د ماشین ژباړه ځای ونیسي او هرکله چې تاسو د خپلو تارونو لپاره ژباړې وغواړئ، لیږدول کیږي.
که تاسو یو متن په لاس وژباړی وي، هغه ژباړې لومړیتوب لري او په ځای يې راستنیږي.
د سرچینو کارول
د TacoTranslate پروژې هغه څه لري چې موږ ورته origins وایو. دوی د داخلېدو نقطو، فولډرونو، یا ستاسو د تارونو او ژباړو لپاره د ګروپونو په توګه وګڼئ.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
اصلونه تاسو ته اجازه درکوي چې تارونه په معنی لرونکو کانتینرونو کې جلا کړئ. د بېلګې په توګه، تاسو کولی شئ یو اصل د سندونو لپاره ولرئ او بل د خپل بازارموندنې پاڼې لپاره.
د لا دقیق کنټرول لپاره، تاسو کولی شئ منشاګانې د کمپوننټ په کچه ترتیب کړئ.
د دې ترلاسه کولو لپاره، په خپل پروژه کې د څو TacoTranslate چمتو کوونکو کارول په پام کې ونیسئ.
مهرباني وکړئ په یاد ولرئ چې په مختلفو اصلي سرچینو کې یوه ورته رشته ممکن مختلف ژباړې ترلاسه کړي.
په پایله کې، څنګه چې تاسو سترینګونه په اصلي سرچینو ویشئ ستاسو په اختیار او اړتیاوو پورې اړه لري. خو پام وکړئ چې په یوه اصلي سرچینه کې د ډیرو سترینګونو شتون کېدای شي د بارولو وخت زیات کړي.
د متغیرونو اداره کول
تاسو باید تل د متحرک مینځپانګې لپاره متغیرونه وکاروئ، لکه د کارونکي نومونه، نیټې، بریښنالیک پتې، او نور.
په لړۍ کې متغیرونه د دوه ګونی کوډرې په کارولو سره اعلان شوي، لکه {{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}});
}
د HTML منځپانګې اداره کول
په ډیفالټ ډول، د Translate
کمپونینټ HTML مینځپانګه ملاتړ کوي او رینډر کوي. مګر، تاسو کولی شئ د دې چلند څخه د وتلو لپاره useDangerouslySetInnerHTML
ته false
وټاکئ.
کله چې غیر باوري منځپانګه لکه د کارونکي لخوا جوړه شوې منځپانګه وژباړئ، د HTML رینډر کول بندول په کلکه سپارښتنه کیږي.
ټولې پایلې تل د sanitize-html په مرسته له وړاندې کولو مخکې پاکېږي.
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}
/>
);
}
پورته مثال به د ساده متن په توګه ښودل کېږي.