TacoTranslate
/
DokumentasiyaQiymətlər
 
  1. Giriş
  2. Başlayaq
  3. Quraşdırma və konfiqurasiya
  4. TacoTranslate-dən istifadə
  5. Server tərəfində renderləmə
  6. Qabaqcıl istifadə
  7. Ən yaxşı təcrübələr
  8. Xətaların idarə olunması və aradan qaldırılması
  9. Dəstəklənən dillər

TacoTranslate-dən istifadə

Sətirlərin tərcüməsi

Hazırda mətnləri tərcümə etməyin üç yolu var: Translate komponenti, useTranslation hooku, və ya translateEntries aləti.


Translate komponentindən istifadə.
Tərcümələri span elementi daxilində göstərir və HTML-i render etməyi dəstəkləyir.

import {Translate} from 'tacotranslate/react';

function Page() {
	return <Translate string="Hello, world!" />;
}

Məsələn, komponentdə as="p" istifadə edərək element növünü dəyişə bilərsiniz.


useTranslation hookdan istifadə.
Tərcümələri sadə mətn kimi qaytarır. Məsələn, meta teqlərində faydalıdır.

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 alətindən istifadə.
Server tərəfində mətnləri tərcümə edin. OpenGraph şəkillərinizi gücləndirin.

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)
	};
}

Sətirlər necə tərcümə olunur

Stringlər serverlərimizə çatdıqda əvvəlcə onları təsdiqləyib yadda saxlayırıq, sonra dərhal maşın tərcüməsini qaytarırıq. Maşın tərcümələri adətən süni intellekt tərcümələrimizlə müqayisədə keyfiyyətcə aşağı olsa da, onlar sürətli ilkin cavab təmin edir.

Eyni zamanda, sətiriniz üçün yüksək keyfiyyətli, ən müasir AI tərcüməsi yaratmaq məqsədilə asinxron tərcümə işi başladırıq. AI tərcüməsi hazır olduqda, o maşın tərcüməsinin yerini alacaq və siz sətirləriniz üçün tərcümə tələb etdiyiniz zaman göndəriləcək.

Əgər bir sətri əl ilə tərcümə etmisinizsə, həmin tərcümələr üstünlük təşkil edir və əvəzinə qaytarılır.

Mənşələrdən istifadə

TacoTranslate layihələri bizim adlandırdığımız mənbələri ehtiva edir. Onları sətirləriniz və tərcümələriniz üçün giriş nöqtələri, qovluqlar və ya qruplar kimi düşünün.

import {TacoTranslate} from 'tacotranslate/react';

function Menu() {
	return (
		<TacoTranslate origin="application-menu">
			// ...
		</TacoTranslate>
	);
}

Originlər sizə mətnləri mənalı konteynerlərə ayırmağa imkan verir. Məsələn, sənədləşdirmə üçün bir origin, marketinq səhifəniz üçün isə başqa bir origin ola bilər.

Daha incə nəzarət üçün originləri komponent səviyyəsində qura bilərsiniz.

Buna nail olmaq üçün layihənizdə bir neçə TacoTranslate provayderindən istifadə etməyi nəzərdən keçirin.

Xahiş edirik nəzərə alın ki, eyni mətn müxtəlif originlərdə müxtəlif tərcümələr ala bilər.

Nəticədə, sətirləri originlərə necə ayıracağınız sizə və ehtiyaclarınıza bağlıdır. Lakin bir origin daxilində çox sayda sətirin olması yüklənmə vaxtını artıra bilər.

Dəyişənlərlə işləmək

Dinamik məzmun üçün — məsələn istifadəçi adları, tarixlər, e-poçt ünvanları və daha çox — həmişə dəyişənlərdən istifadə etməlisiniz.

Sətirlərdəki dəyişənlər ikiqat mötərizə ilə elan edilir, məsələn {{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 məzmununun idarə edilməsi

Varsayılan olaraq, Translate komponenti HTML məzmununu dəstəkləyir və göstərir. Lakin, bu davranışdan imtina edə bilərsiniz — bunun üçün useDangerouslySetInnerHTML dəyərini false olaraq təyin edin.

İstifadəçilər tərəfindən yaradılan məzmun kimi etibarsız sayılan məzmunu tərcümə edərkən HTML renderlənməsini deaktiv etmək şiddətlə tövsiyə olunur.

Bütün çıxışlar göstərilməzdən əvvəl həmişə sanitize-html ilə təmizlənir.

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}
		/>
	);
}

Yuxarıdakı nümunə sadə mətn kimi göstəriləcək.

Server tərəfində renderləmə

Nattskiftet tərəfindən hazırlanmış məhsulNorveç istehsalı