TacoTranslate
/
DokumentationPriser
 
  1. Introduktion
  2. Kom godt i gang
  3. Opsætning og konfiguration
  4. Brug af TacoTranslate
  5. Gengivelse på serversiden
  6. Avanceret brug
  7. Bedste praksis
  8. Fejlhåndtering og fejlfinding
  9. Understøttede sprog

Brug af TacoTranslate

Oversættelse af strenge

Der er i øjeblikket tre måder at oversætte strenge på: Translate komponenten, useTranslation hooken, eller translateEntries værktøjet.


Brug af Translate komponenten.
Returnerer oversættelser inden for et span element og understøtter gengivelse af HTML.

import {Translate} from 'tacotranslate/react';

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

Du kan ændre elementtypen ved for eksempel at bruge as="p" på komponenten.


Brug af useTranslation hook.
Returnerer oversættelser som en almindelig tekststreng. Nyttigt for eksempel i meta tags.

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

Brug af translateEntries værktøjet.
Oversæt strenge på serversiden. Giv dine OpenGraph billeder ekstra 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)
	};
}

Hvordan strenge oversættes

Når strenge når vores servere, validerer og gemmer vi dem først, hvorefter vi straks returnerer en maskinoversættelse. Selvom maskinoversættelser generelt er af lavere kvalitet sammenlignet med vores AI-oversættelser, giver de et hurtigt første svar.

Samtidig starter vi et asynkront oversættelsesjob for at generere en højkvalitets, topmoderne AI-oversættelse af din tekst. Når AI-oversættelsen er klar, vil den erstatte maskinoversættelsen og blive sendt, hver gang du anmoder om oversættelser af dine tekster.

Hvis du manuelt har oversat en streng, har disse oversættelser forrang og returneres i stedet.

Udnyttelse af origins

TacoTranslate-projekter indeholder det, vi kalder origins. Tænk på dem som indgangspunkter, mapper eller grupper til dine strenge og oversættelser.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins lader dig opdele strenge i meningsfulde beholdere. For eksempel kan du have én origin til dokumentation og en anden til din marketing-side.

For mere detaljeret kontrol kan du opsætte origins på komponentniveau.

For at opnå dette, overvej at bruge flere TacoTranslate udbydere i dit projekt.

Bemærk venligst, at den samme tekststreng kan modtage forskellige oversættelser i forskellige origins.

I sidste ende er det op til dig og dine behov, hvordan du opdeler strenge i origins. Bemærk dog, at mange strenge inden for én origin kan øge indlæsningstiderne.

Håndtering af variabler

Du bør altid bruge variabler til dynamisk indhold, såsom brugernavne, datoer, e-mailadresser og mere.

Variabler i strenge erklæres ved brug af dobbelte parenteser, såsom {{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}});
}

Håndtering af HTML-indhold

Som standard understøtter og gengiver Translate komponenten HTML-indhold. Du kan dog fravælge denne adfærd ved at sætte useDangerouslySetInnerHTML til false.

Det anbefales kraftigt at deaktivere HTML-rendering, når man oversætter ikke-tillidværdigt indhold, såsom bruger-genereret indhold.

Al output bliver altid renset med sanitize-html inden den vises.

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

Ovenstående eksempel vil blive gengivet som almindelig tekst.

Gengivelse på serversiden

Et produkt fra NattskiftetFremstillet i Norge