TacoTranslate
/
DokumentationPriser
 
  1. Introduktion
  2. Kom igång
  3. Installation och konfiguration
  4. Använda TacoTranslate
  5. Rendering på serversidan
  6. Avancerad användning
  7. Bästa praxis
  8. Felhantering och felsökning
  9. Stödda språk

Använda TacoTranslate

Översätta strängar

Det finns för närvarande tre sätt att översätta strängar: komponenten Translate, hooken useTranslation, eller translateEntries-verktyget.


Att använda Translate‑komponenten.
Returnerar översättningar inom ett span‑element och stöder rendering av HTML.

import {Translate} from 'tacotranslate/react';

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

Du kan ändra elementtypen genom att till exempel använda as="p" på komponenten.


Använda useTranslation hooken.
Returnerar översättningar som en vanlig sträng. Användbart i till exempel meta taggar.

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

Använd translateEntries verktyget.
Översätt strängar på serversidan. Ge dina OpenGraph bilder extra kraft.

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

Hur strängar översätts

När strängar når våra servrar validerar och sparar vi dem först, och returnerar därefter omedelbart en maskinöversättning. Även om maskinöversättningar generellt håller lägre kvalitet än våra AI-översättningar, ger de ett snabbt initialt svar.

Samtidigt startar vi ett asynkront översättningsjobb för att generera en högkvalitativ, toppmodern AI-översättning för din sträng. När AI-översättningen är klar kommer den att ersätta maskinöversättningen och skickas varje gång du begär översättningar för dina strängar.

Om du manuellt har översatt en sträng har dessa översättningar företräde och returneras istället.

Använda ursprung

TacoTranslate-projekt innehåller det vi kallar origins. Tänk på dem som ingångspunkter, mappar eller grupper för dina strängar och översättningar.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins låter dig dela upp strängar i meningsfulla grupper. Till exempel kan du ha en origin för dokumentation och en annan för din marknadssida.

För mer detaljerad kontroll kan du konfigurera origins på komponentnivå.

För att uppnå detta, överväg att använda flera TacoTranslate leverantörer i ditt projekt.

Observera att samma sträng kan få olika översättningar i olika ursprung.

I slutändan bestämmer du, utifrån dina behov, hur du delar upp strängar i origins. Tänk dock på att många strängar i samma origin kan öka laddningstiderna.

Hantering av variabler

Du bör alltid använda variabler för dynamiskt innehåll, såsom användarnamn, datum, e‑postadresser med mera.

Variabler i strängar deklareras med dubbla klammer, till exempel {{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}});
}

Hantera HTML-innehåll

Som standard stöder Translate komponenten HTML-innehåll och renderar det. Du kan dock välja bort detta beteende genom att ställa in useDangerouslySetInnerHTMLfalse.

Det rekommenderas starkt att inaktivera HTML-rendering när man översätter otillförlitligt innehåll, till exempel användargenererat innehåll.

All utdata saneras alltid med sanitize-html innan det renderas.

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

Ovanstående exempel kommer att renderas som vanlig text.

Rendering på serversidan

En produkt från NattskiftetTillverkad i Norge