TacoTranslate
/
ҚұжаттамаБағалар
 
  1. Кіріспе
  2. Жұмысқа кірісу
  3. Орнату және баптау
  4. TacoTranslate қолдану
  5. Сервер жағында рендерлеу
  6. Кеңейтілген пайдалану
  7. Үздік тәжірибелер
  8. Қателерді өңдеу және түзету
  9. Қолдау көрсетілетін тілдер

TacoTranslate қолдану

Мәтін жолдарын аудару

Қазіргі уақытта жолдарды аударудың үш тәсілі бар: Translate компоненті, useTranslation хук немесе translateEntries утилитасы.


Translate компонентін пайдалану.
Аудармаларды span элементінің ішіне шығарады және HTML көрсетуді қолдайды.

import {Translate} from 'tacotranslate/react';

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

Мысалы, компонентте as="p" параметрін пайдаланып, элемент типін өзгерте аласыз.


useTranslation хукін қолдану.
Аудармаларды қарапайым жол (string) ретінде қайтарады. Мысалы, meta тегтерінде пайдалы.

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 утилитасын пайдалану.
Жолдарды сервер жағында аударыңыз. Сіздің OpenGraph суреттеріңізді күшейтіңіз.

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

Мәтіндер қалай аударылады

Жолдар біздің серверлерге жеткенде, біз оларды алдымен тексеріп, сақтаймыз, содан кейін дереу машиналық аудармасын қайтарамыз. Машиналық аудармалар әдетте біздің ЖИ аудармаларымызға қарағанда сапасы төмен болғанымен, олар жылдам бастапқы жауап береді.

Сонымен қатар, біз сіздің мәтініңізге жоғары сапалы, ең озық ЖИ аудармасын жасауға асинхронды аударма тапсырмасын бастаймыз. ЖИ аудармасы дайын болғанда, ол машиналық аударманың орнын басып, сіз аудармаларды сұратқан сайын жіберіледі

Егер сіз жолды қолмен аударған болсаңыз, сол аудармалар басымдыққа ие болып, оның орнына қайтарылады.

Origin-дарды пайдалану

TacoTranslate жобаларында біз origins деп атайтын бөлімдер болады. Оларды мәтіндеріңіз бен аудармаларыңыз үшін кіріс нүктелері, қалталар немесе топтар деп ойлаңыз.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins сізге мәтіндерді мағыналы контейнерлерге бөлуге мүмкіндік береді. Мысалы, құжаттамаға арналған бір origin, ал маркетинг бетіңізге арналған басқа origin болуы мүмкін.

Егжей-тегжейлі бақылау үшін компонент деңгейінде origins орнатуға болады.

Осыны жүзеге асыру үшін жобаңызда бірнеше TacoTranslate провайдерді қолдануды қарастырыңыз.

Ескеріңіз: бірдей мәтін әртүрлі шыққан жерлерде әртүрлі аудармалар алуы мүмкін.

Қорытындылай келе, жолдарды origin-дерге қалай бөлетініңіз — өз қалауыңыз бен қажеттіліктеріңізге байланысты. Алайда бір origin ішінде көп жолдар болса, жүктелу уақыты ұлғаюы мүмкін екенін ескеріңіз.

Айнымалыларды өңдеу

Динамикалық мазмұн үшін (мысалы, пайдаланушы аттары, күндер, электрондық пошта мекенжайлары және т.б.) әрқашан айнымалыларды пайдаланыңыз.

Жолдардағы айнымалылар қос жақшаларды пайдаланып жарияланады, мысалы {{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 мазмұнын басқару

Әдепкі бойынша, Translate компоненті HTML мазмұнын қолдайды және көрсетеді. Дегенмен, осы әрекеттен бас тартқыңыз келсе, useDangerouslySetInnerHTML мәнін false етіп орнатуға болады.

Сенімсіз мазмұнды, мысалы пайдаланушылар жасаған мазмұнды аударғанда HTML-ті көрсету мүмкіндігін өшіру қатты ұсынылады.

Барлық шығыс мазмұны әрқашан sanitize-html арқылы көрсетілмес бұрын тазаланады.

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

Жоғарыдағы мысал қарапайым мәтін ретінде көрсетіледі.

Сервер жағында рендерлеу

Nattskiftet компаниясының өніміНорвегияда жасалған