TacoTranslate
/
DokumentasjonPriser
 
  1. Introduksjon
  2. Kom i gang
  3. Oppsett og konfigurasjon
  4. Bruke TacoTranslate
  5. Rendering på serversiden
  6. Avansert bruk
  7. Beste praksis
  8. Feilhåndtering og feilsøking
  9. Støttede språk

Bruke TacoTranslate

Oversette strenger

Det finnes for øyeblikket tre måter å oversette strenger på: komponenten Translate, hooken useTranslation, eller verktøyet translateEntries.


Bruke Translate komponenten.
Returnerer oversettelser i et span element og støtter gjengivelse av HTML.

import {Translate} from 'tacotranslate/react';

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

Du kan endre elementtypen ved for eksempel å bruke as="p" på komponenten.


Bruk av useTranslation hooken.
Returnerer oversettelser som en vanlig tekststreng. Nyttig i for eksempel meta tagger.

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

Bruke translateEntries-verktøyet.
Oversett strenger på serversiden. Gi OpenGraph-bildene dine et løft.

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 strenger oversettes

Når tekststrenger når serverne våre, validerer og lagrer vi dem først, og returnerer deretter umiddelbart en maskinoversettelse. Selv om maskinoversettelser vanligvis har lavere kvalitet enn våre AI-oversettelser, gir de et raskt første svar.

Samtidig starter vi en asynkron oversettelsesjobb for å generere en høykvalitets, avansert AI-oversettelse av strengen din. Når AI-oversettelsen er klar, vil den erstatte maskinoversettelsen og bli sendt hver gang du ber om oversettelser av strengene dine.

Hvis du har oversatt en streng manuelt, har disse oversettelsene prioritet og returneres i stedet.

Bruke opprinnelser

TacoTranslate-prosjekter inneholder det vi kaller opprinnelser. Se på dem som inngangspunkter, mapper eller grupper for strengene og oversettelsene dine.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins lar deg dele strenger inn i meningsfulle beholdere. For eksempel kan du ha én origin for dokumentasjon og en annen for markedsføringssiden din.

For mer granulær kontroll kan du sette opp origins på komponentnivå.

For å oppnå dette, vurder å bruke flere TacoTranslate leverandører i prosjektet ditt.

Vær oppmerksom på at den samme strengen kan få forskjellige oversettelser i forskjellige opprinnelser.

Til syvende og sist er det opp til deg og dine behov hvordan du deler opp strengene i origins. Vær imidlertid oppmerksom på at det å ha mange strenger i én origin kan øke lastetiden.

Håndtering av variabler

Du bør alltid bruke variabler for dynamisk innhold, for eksempel brukernavn, datoer, e-postadresser og mer.

Variabler i strenger angis ved hjelp av doble krøllparenteser, for eksempel {{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åndtere HTML-innhold

Som standard støtter Translate komponenten og gjengir HTML-innhold. Du kan imidlertid velge bort denne oppførselen ved å sette useDangerouslySetInnerHTML til false.

Det anbefales sterkt å deaktivere HTML-gjengivelse når du oversetter innhold som ikke er pålitelig, for eksempel brukergenerert innhold.

Alt innhold blir alltid renset med sanitize-html før det gjengis.

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

Eksemplet ovenfor vil bli gjengitt som ren tekst.

Rendering på serversiden

Et produkt fra NattskiftetLaget i Norge