TacoTranslate
/
დოკუმენტაციაფასები
 
  1. შესავალი
  2. გავიწყოთ
  3. დაყენება და კონფიგურაცია
  4. TacoTranslate-ის გამოყენება
  5. სერვერზე დაფუძნებული რენდერული
  6. წინასწარი გამოყენება
  7. საუკეთესო პრაქტიკები
  8. შეცდომების მართვა და გაუმჯობესება
  9. მხარდაჭერილი ენები

წინასწარი გამოყენება

მარჯნიდან-მარცხნივ ენების დამუშავება

TacoTranslate ამარტივებს მარჯვენიდან მარცხნივ (RTL) დამწერლობის ენების, მაგალითად არაბული და ებრაული, მხარდაჭერას თქვენს React აპლიკაციებში. RTL ენების სწორი მართვა უზრუნველყოფს, რომ თქვენი შინაარსი სწორად იყოს წარმოდგენილი მარჯვენიდან მარცხნივ წერა-კითხვის მომხმარებლებისთვის.

import {useTacoTranslate} from 'tacotranslate/react';

function Document() {
	const {locale, isRightToLeft} = useTacoTranslate();

	return (
		<html lang={locale} dir={isRightToLeft ? 'rtl' : 'ltr'}>
			<body>
				// ...
			</body>
		</html>
	);
}

შეგიძლიათ ასევე გამოიყენოთ უზრუნველყოფილი isRightToLeftLocaleCode ფუნქცია მიმდინარე ენის შესამოწმებლად React გარეთ.

import {isRightToLeftLocaleCode} from 'tacotranslate';

function foo(locale = 'es') {
	const direction = isRightToLeftLocaleCode(locale) ? 'rtl' : 'ltr';
	// ...
}

თარგმანის გამორთვა

სტრიქონის კონკრეტული ნაწილების თარგმანის გამორთვის ან იმის უზრუნველსაყოფად, რომ გარკვეული მონაკვეთები უცვლელი დარჩეს, შეგიძლიათ გამოიყენოთ სამმაგი კუთხედი ფრჩხილები. ეს ფუნქცია სასარგებლოა სახელებისა, ტექნიკური ტერმინებისა ან სხვა ნებისმიერი მასალის ორიგინალური ფორმატის შენარჩუნებისთვის, რაც არ უნდა თარგმნოდეს.

import {Translate} from 'tacotranslate/react';

function Component() {
	return (
		<Translate string="Hello, [[[TacoTranslate]]]!" />
	);
}

ამ მაგალითში, სიტყვა „TacoTranslate“ თარგმნისას უცვლელი დარჩება.

მრავალი TacoTranslate მიმწოდებელი

ჩვენ ძლიერად ვურჩევთ გამოიყენოთ მრავალობითი TacoTranslate პროვაიდერები თქვენს აპლიკაციაში. ეს საშუალებას მოგცემთ გაანაწილოთ თქვენი თარგმანები და სტრიქონები სხვადასხვა წარმოშობებზე, მაგალითად თქვენი ჰედერი, ფუჭერი ან კონკრეტული განყოფილებები.

თქვენ შეგიძლიათ გაიგოთ მეტი ორიგინების გამოყენების შესახებ აქ.

TacoTranslate პროვაიდერები იღებენ პარამეტრებს ნებისმიერ ზედა პროვაიდერიდან, ამიტომ სხვა პარამეტრების გამეორება არ დაგჭირდებათ.

import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate} from 'tacotranslate/react';

const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});

function Header() {
	return (
		<TacoTranslate origin="header">
			// ...
		</TacoTranslate>
	);
}

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

export default function App() {
	return (
		<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
			<Header />
			<Menu />
		</TacoTranslate>
	);
}

ობიექტის ან ლოკალის გადაფარვა

მრავალ TacoTranslate პროვაიდერთან ერთად, ასევე შეგიძლიათ დააყენოთ ორიგინი და ლოკალიც რესურსის Translate კომპონენტსა და useTranslation Hook დონეზე.

import {Translate, useTranslation} from 'tacotranslate/react';

function Greeting() {
	const spanishHello = useTranslation('Hello!', {locale: 'es'});

	return (
		<>
			{spanishHello}
			<Translate string="What’s up?" origin="greeting" />
		</>
	);
}

ჩატვირთვის obebi

მომხმარებლის კავშირის მიხედვით, ენის შეცვლისას მთარგმნელობის მიღება შეიძლება რამდენიმე წამი გაგრძელდეს. გაფართოების პროცესის დროს ვიზუალური გამოხმაურების მისაწოდებლად შეგიძლიათ აჩვენოთ დამტვირთავი ინდიკატორი, რათა გაუმჯობესდეს მომხმარებლის გამოცდილება.

import {useTacoTranslate} from 'tacotranslate/react';

function Component() {
	const {isLoading} = useTacoTranslate();

	return (
		isLoading ? 'Translations are loading...' : null
	);
}

დროული რიცხვი

მრავალიცხოვრის ფორმების მართვა და რაოდენობის მიხედვით ეტიკეტების σωστή ჩვენება სხვადასხვა ენებზე მიიჩნევა საუკეთესო პრაქტიკად:

import {Translate, useLocale} from 'tacotranslate/react';

function PhotoCount() {
	const locale = useLocale();
	const count = 1;

	return count === 0 ? (
		<Translate string="You have no photos." />
	) : count === 1 ? (
		<Translate string="You have 1 photo." />
	) : (
		<Translate
			string="You have {{count}} photos."
			variables={{count: count.toLocaleString(locale)}}
		/>
	);
}

მრავალენოვანი

თითოეული აპლიკაციის ფარგლებში რამდენიმე ენის ერთდროული მხარდაჭერისთვის, შეგიძლიათ გამოიყენოთ მრავალჯერადი TacoTranslate პროვაიდერები სხვადასხვა locale მნიშვნელობებით, როგორც ქვემოთაა ნაჩვენები:

თქვენ ასევე შეგიძლიათ დაარღვიოთ locale კომპონენტის ან ჰუკის დონეზე.

import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate, Translate} from 'tacotranslate/react';

const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});

function Spanish() {
	return (
		<TacoTranslate locale="es">
			<Translate string="Hello, world in Spanish!" />
		</TacoTranslate>
	);
}

function Norwegian() {
	return (
		<TacoTranslate locale="no">
			<Translate string="Hello, world in Norwegian!" />
		</TacoTranslate>
	);
}

export default function App() {
	return (
		<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
			<Spanish />
			<Norwegian />
		</TacoTranslate>
	);
}

განათარგმნებისთვის ID-ების გამოყენება

თქვენ შეგიძლიათ დაამატოთ id კომპონენტს Translate სხვადასხვა თარგმნების ან მნიშვნელობების დასაკმაყოფილებლად ერთი და იგივე სტრინგისათვის. ეს განსაკუთრებით სასარგებლოა, როცა ერთი და იგივე ტექსტს კონტექსტის მიხედვით სხვადასხვა თარგმნა სჭირდება. უნიკალური ID-ების მინიჭებით, თქვენ უზრუნველყოფთ, რომ სტრინგის თითოეული შემთხვევა ზუსტად ითარგმნება კონკრეტული მნიშვნელობის მიხედვით.

import {Translate} from 'tacotranslate/react';

function Header() {
	return (
		<Translate id="header" string="Login" />
	);
}

function Footer() {
	return (
		<Translate id="footer" string="Login" />
	);
}

მაგალითად, header login შეიძლება თარგმნიდეს როგორც “Iniciar sesión”, ხოლო footer login შეიძლება თარგმნიდეს როგორც “Acceder” ესპანურად.

საუკეთესო პრაქტიკები

პროდუქტი Nattskiftet-ისგანწარმოდგენილია ნორვეგიაში