TacoTranslate
/
DocumentatiePrijzen
 
  1. Inleiding
  2. Aan de slag
  3. Installatie en configuratie
  4. TacoTranslate gebruiken
  5. Rendering aan de serverzijde
  6. Geavanceerd gebruik
  7. Beste praktijken
  8. Foutafhandeling en foutopsporing
  9. Ondersteunde talen

TacoTranslate gebruiken

Strings vertalen

Er zijn momenteel drie manieren om strings te vertalen: de Translate component, de useTranslation hook, of de translateEntries utility.


Het gebruik van de Translate component.
Geeft vertalingen weer binnen een span element en ondersteunt het weergeven van HTML.

import {Translate} from 'tacotranslate/react';

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

Je kunt het elementtype wijzigen door bijvoorbeeld as="p" op de component te gebruiken.


Gebruik van de useTranslation hook.
Geeft vertalingen terug als een gewone string. Handig, bijvoorbeeld in 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>
	);
}

Het gebruik van het hulpprogramma translateEntries.
Vertaal strings aan de serverzijde. Geef je OpenGraph afbeeldingen een boost.

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

Hoe strings worden vertaald

Wanneer strings onze servers bereiken, valideren en slaan we ze eerst op en geven we vervolgens onmiddellijk een machinale vertaling terug. Hoewel machinale vertalingen over het algemeen van lagere kwaliteit zijn dan onze AI-vertalingen, bieden ze een snelle eerste reactie.

Tegelijkertijd starten we een asynchrone vertaaltaak om een hoogwaardige, state-of-the-art AI-vertaling voor uw string te genereren. Zodra de AI-vertaling klaar is, zal deze de machinevertaling vervangen en worden verzonden telkens wanneer u vertalingen voor uw strings opvraagt.

Als u een string handmatig hebt vertaald, krijgen die vertalingen voorrang en worden ze in plaats daarvan teruggegeven.

Origins gebruiken

TacoTranslate-projecten bevatten wat wij origins noemen. Zie ze als ingangspunten, mappen of groepen voor je strings en vertalingen.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins stellen je in staat om strings in betekenisvolle containers onder te brengen. Bijvoorbeeld kun je één origin hebben voor documentatie en een andere voor je marketingpagina.

Voor meer gedetailleerde controle kunt u origins op componentniveau instellen.

Om dit te bereiken, overweeg binnen je project meerdere TacoTranslate providers te gebruiken.

Houd er rekening mee dat dezelfde string in verschillende origins verschillende vertalingen kan krijgen.

Uiteindelijk bepaalt u, op basis van uw behoeften, hoe u strings in origins verdeelt. Houd er echter rekening mee dat veel strings binnen één origin de laadtijden kunnen verhogen.

Omgaan met variabelen

Je moet altijd variabelen gebruiken voor dynamische inhoud, zoals gebruikersnamen, datums, e-mailadressen en meer.

Variabelen in tekenreeksen worden gedeclareerd met dubbele accolades, zoals {{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-inhoud beheren

Standaard ondersteunt de Translate component HTML-inhoud en geeft deze weer. U kunt dit gedrag echter uitschakelen door useDangerouslySetInnerHTML op false te zetten.

Het uitschakelen van HTML-rendering wordt sterk aanbevolen bij het vertalen van niet-vertrouwde inhoud, zoals door gebruikers gegenereerde inhoud.

Alle uitvoer wordt altijd gesanitiseerd met sanitize-html voordat deze wordt weergegeven.

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

Het bovenstaande voorbeeld wordt als platte tekst weergegeven.

Rendering aan de serverzijde

Een product van NattskiftetGemaakt in Noorwegen