TacoTranslate
/
SənədləşməQiymə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. Səhvlərin idarə olunması və ayıklama
  9. Dəstəklənən dillər

TacoTranslate-dən istifadə

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

Hal-hazırda mətnləri tərcümə etməyin üç yolu var: Translate komponenti, useTranslation hook-u, ya da translateEntries utiliti-si.


Translate komponentindən istifadə.
span elementi daxilində tərcümələri çıxarır və HTML render edilməsini 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 hook-dan 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ə.
Simvolları server tərəfdə 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

Sətirlər serverlərimizə çatdıqda, əvvəlcə onları yoxlayır və saxlayırıq, sonra dərhal maşın tərcüməsini qaytarırıq. Maşın tərcümələri ümumiyyətlə süni intellekt tərcümələrimizlə müqayisədə daha aşağı keyfiyyətdə olsa da, sürətli ilkin cavab təmin edirlər.

Eyni zamanda, sətiriniz üçün yüksək keyfiyyətli, ən müasir AI tərcüməsini yaratmaq üçün 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 tutacaq və sətirləriniz üçün tərcümə tələb etdiyiniz zaman göndəriləcək.

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

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

TacoTranslate layihələri içində bizə origins dediyimiz şeylər var. Onları sizin mətnləriniz və tərcümələriniz üçün giriş nöqtələri, qovluqlar və ya qruplar kimi düşünə bilərsiniz.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins sizə sətirləri mənalı konteynerlərə ayırmağa imkan verir. Məsələn, sənədləşdirmə üçün bir origin və marketinq səhifəniz üçün başqa bir origin təyin edə bilərsiniz.

Daha incə tənzimləmə üçün, orijinləri komponent səviyyəsində qura bilərsiniz.

Bunu həyata keçirmək üçün layihənizdə bir neçə TacoTranslate təminatçısından istifadə etməyi nəzərdən keçirin.

Zəhmət olmasa unutmayın ki, eyni sətrin fərqli originlərdə müxtəlif tərcümələri ola bilər.

Nəticədə, mətnləri necə və hansı originlərə ayırmağınız sizin və tələblərinizdən asılıdır. Lakin, qeyd etmək lazımdır ki, bir origin daxilində çox sayda mətnin olması yüklənmə vaxtını artıra bilər.

Dəyişənlərin idarə edilməsi

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

Sətirlərdə dəyişənlər cüt mötərizələrlə 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

Defolt olaraq, Translate komponenti HTML məzmununu dəstəkləyir və göstərir. Lakin, bu davranışdan imtina etmək üçün useDangerouslySetInnerHTML parametrini false olaraq təyin edə bilərsiniz.

Müştəri tərəfindən yaradılan məzmun kimi etibarlı olmayan məzmunu tərcümə edərkən HTML təqdimatını söndürmək güclü şəkildə tövsiyə olunur.

Bütün çıxışlar həmişə göstərilmədən əvvəl 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 təqdim olunan məhsulNorveçdə hazırlanmışdır