TacoTranslate
/
HujjatlarNarxlar
 
  1. Kirish
  2. Boshlash
  3. Sozlash va konfiguratsiya
  4. TacoTranslate'dan foydalanish
  5. Server tomonida renderlash
  6. Kengaytirilgan foydalanish
  7. Eng yaxshi amaliyotlar
  8. Xatolarni boshqarish va nosozliklarni tuzatish
  9. Qo'llab-quvvatlanadigan tillar

TacoTranslate'dan foydalanish

Matnlarni tarjima qilish

Hozirda satrlarni tarjima qilishning uchta usuli mavjud: Translate komponenti, useTranslation hook'i yoki translateEntries utilitasi.


Translate komponentidan foydalanish.
Tarjimalarni span elementi ichida chiqaradi va HTMLni render qilishni qo'llab-quvvatlaydi.

import {Translate} from 'tacotranslate/react';

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

Masalan, komponentda as="p" parametridan foydalanib element turini o'zgartirishingiz mumkin.


useTranslation hookdan foydalanish.
Tarjimalarni oddiy satr sifatida qaytaradi. Masalan, meta teglarida foydalidir.

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 utilitadan foydalanish.
Matnlarni server tomonida tarjima qiling. Sizning OpenGraph rasmlaringizni kuchaytiring.

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

Matnlar qanday tarjima qilinadi

Bizning serverlarimizga satrlar yetib borganda, avvalo ularni tekshiramiz va saqlaymiz, so'ng darhol mashina tarjimasini qaytaramiz. Mashina tarjimalari odatda bizning sun'iy intellekt tarjimalarimizga nisbatan sifat jihatidan pastroq bo'lsa-da, ular tezkor boshlang'ich javobni taqdim etadi.

Shu bilan birga, biz sizning satringiz uchun yuqori sifatli, eng zamonaviy sun'iy intellekt (AI) tarjimasini yaratish uchun asinxron tarjima ishini boshlaymiz. AI tarjimasi tayyor bo'lgach, u mashina tarjimasining o'rnini egallaydi va siz satrlaringiz uchun tarjimalarni so'raganingizda yuboriladi.

Agar siz bir satrni qo'lda tarjima qilgan bo'lsangiz, o'sha tarjimalar ustuvor bo'lib, ular qaytariladi.

Manbalardan foydalanish

TacoTranslate loyihalarida biz origins deb ataydigan narsalar mavjud. Ularni sizning satrlaringiz va tarjimalaringiz uchun kirish nuqtalari, papkalar yoki guruhlar sifatida tasavvur qiling.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins sizga matnlarni ma'noli konteynerlarga ajratishga imkon beradi. Masalan, hujjatlar uchun bitta origin, marketing sahifangiz uchun esa boshqa origin bo'lishi mumkin.

Yanada nozik nazorat uchun originlarni komponent darajasida sozlashingiz mumkin.

Buni amalga oshirish uchun loyihangizda bir nechta TacoTranslate provayderlaridan foydalanishni ko‘rib chiqing.

Iltimos, shuni yodda tutingki, bir xil satr turli originlarda turlicha tarjima qilinishi mumkin.

Oxir-oqibat, satrlarni originlarga qanday ajratishingiz sizga va ehtiyojlaringizga bogʻliq. Biroq, bir origin ichida juda koʻp satrlar boʻlsa, yuklanish vaqtlari oshishi mumkinligini yodda tuting.

O'zgaruvchilarni boshqarish

Dinamik mazmun uchun har doim o'zgaruvchilarni ishlatishingiz kerak, masalan foydalanuvchi ismlari, sanalar, elektron pochta manzillari va boshqalar.

Satr ichidagi o'zgaruvchilar juft qavslar yordamida e'lon qilinadi, masalan {{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 mazmunini boshqarish

Odatda, Translate komponent HTML tarkibini qo'llab-quvvatlaydi va ko'rsatadi. Biroq, ushbu xulq-atvordan voz kechish uchun useDangerouslySetInnerHTML ni false ga o'rnating.

Foydalanuvchilar tomonidan yaratilgan kabi ishonchli bo‘lmagan kontentni tarjima qilayotganda HTML-renderingni o‘chirish qatʼiyan tavsiya etiladi.

Barcha chiqishlar har doim sanitize-html yordamida ko'rsatilishdan oldin tozalanadi.

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

Yuqoridagi misol oddiy matn sifatida ko'rsatiladi.

Server tomonida renderlash

Nattskiftet tomonidan yaratilgan mahsulotNorvegiyada ishlab chiqarilgan