TacoTranslate
/
SənədləşdirməQiymətləndirmə
 
  1. Giriş
  2. Başlama
  3. Quraşdırma və konfiqurasiya
  4. TacoTranslate istifadə etmək
  5. Server-tərəfli renderləmə
  6. Qabaqcıl istifadə
  7. Ən yaxşı təcrübələr
  8. Səhv idarəetməsi və ayıklama
  9. Dəstəklənən dillər

TacoTranslate istifadə etmək

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

Hal-hazırda mətnləri tərcümə etmək üçün üç yol var: Translate komponenti, useTranslation hook-u və ya translateEntries utiliti vasitəsilə.


Translate komponentindən istifadə.
span elementində tərcümələri çıxarır və HTML renderlənmə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 vasitəsini istifadə etmək.
Simvolları server tərəfində tərcümə edin. OpenGraph şəkillərinizi super 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

Mətnlə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ə AI tərcümələrimizə nisbətən daha aşağı keyfiyyətli olsa da, sürətli ilkin cavab təmin edir.

Eyni zamanda, simanız üçün yüksək keyfiyyətli, ən müasir süni intellekt tərcüməsini yaratmaq üçün asinxron tərcümə işi başladırıq. Süni intellekt tərcüməsi hazır olduqda, o, maşın tərcüməsini əvəz edəcək və siz simalarınız üçün tərcümə tələb etdikdə göndəriləcək.

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

Mənbələrdən istifadə etmək

TacoTranslate layihələrində origins adlandırdığımız elementlər mövcuddur. 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>
	);
}

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

Daha ətraflı nəzarət üçün, component səviyyəsində origins qura bilərsiniz.

Buna nail olmaq üçün, layihənizdə bir neçə TacoTranslate təminatçısından istifadə etməyi nəzərdən keçirin.

Qeyd edin ki, eyni mətn müxtəlif origins daxilində fərqli tərcümələr ala bilər.

Nəhayət, mətnləri originlərə necə ayırmağınız sizin və ehtiyaclarınızdan asılıdır. Lakin, bir origin daxilində çox sayda mətnin olması yüklənmə vaxtını artıra bilər.

Dəyişənlərin idarə olunması

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

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

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

Etibarsız məzmunun, məsələn, istifadəçi tərəfindən yaradılan məzmunun tərcüməsi zamanı HTML təqdimatının deaktiv edilməsi şiddətlə tövsiyə olunur.

Bütün çıxışlar göstərilmədə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əfli renderləmə

Bir məhsul Nattskiftet-dənNorveçdə hazırlanmışdır