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 hook.
Враќа преводи како обичен текст. Корисно, на пример, во 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)
	};
}

Како се преведуваат низите

Кога стринговите стигнат до нашите сервери, ние прво ги потврдуваме и ги зачувуваме, а потоа веднаш враќаме машински превод. Иако машинските преводи генерално се со помал квалитет во споредба со нашите AI преводи, тие обезбедуваат брз почетен одговор.

Истовремено, започнуваме асинхрона задача за превод за да генерираме висококвалитетен, најсовремен AI превод за вашиот низ. Откако AI преводот ќе биде подготвен, тој ќе го замени машинскиот превод и ќе биде испратен секогаш кога ќе побарате преводи за вашите низи.

Ако сте рачно превеле некој низ, тие преводи имаат предност и се враќаат наместо тоа.

Користење на оригинали

Проектите на TacoTranslate содржат она што го нарекуваме origins. Замислете ги како влезни точки, фолдери или групи за вашите низи и преводи.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins ви овозможуваат да ги разделите низа на значајни контейнери. На пример, можете да имате еден origin за документација и друг за вашата маркетинг страница.

За пофино контролирање, можете да поставите origins на ниво на компонентата.

За да го постигнете ова, разгледајте ја можноста за користење на повеќе TacoTranslate провајдери во рамките на вашиот проект.

Ве молиме имајте предвид дека истата низа може да добие различни преводи во различни извори.

Конечниот избор како ќе ги поделите низаите во origins зависи од вас и вашите потреби. Сепак, имајте во предвид дека голем број низи во една 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Направено во Норвешка