TacoTranslate
/
DogfennaethPrisiau
 
  1. Cyflwyniad
  2. Dechrau
  3. Sefydlu a ffurfweddu
  4. Defnyddio TacoTranslate
  5. Rendro ar ochr y gweinydd
  6. Defnydd uwch
  7. Ymarferion gorau
  8. Trin gwallau a dadfygio
  9. Ieithoedd a gefnogir

Defnydd uwch

Delio ag ieithoedd o'r dde i'r chwith

Mae TacoTranslate yn ei gwneud yn hawdd cefnogi ieithoedd sy'n cael eu darllen o'r dde i'r chwith (RTL), megis Arabeg ac Hebraeg, mewn eich cymwysiadau React. Pan fydd iaithoedd RTL yn cael eu trin yn gywir, mae'n sicrhau bod eich cynnwys yn cael ei arddangos yn iawn i ddefnyddwyr sy'n darllen o'r dde i'r chwith.

import {useTacoTranslate} from 'tacotranslate/react';

function Document() {
	const {locale, isRightToLeft} = useTacoTranslate();

	return (
		<html lang={locale} dir={isRightToLeft ? 'rtl' : 'ltr'}>
			<body>
				// ...
			</body>
		</html>
	);
}

Gallwch hefyd ddefnyddio'r swyddogaeth isRightToLeftLocaleCode a ddarperir i wirio'r iaith gyfredol y tu allan i React.

import {isRightToLeftLocaleCode} from 'tacotranslate';

function foo(locale = 'es') {
	const direction = isRightToLeftLocaleCode(locale) ? 'rtl' : 'ltr';
	// ...
}

Analluogi cyfieithu

Er mwyn atal cyfieithu ar gyfer rhannau penodol o llinyn neu i sicrhau bod segmentau penodol yn cael eu cadw fel y maent, gallwch ddefnyddio braciadau sgwâr tripl. Mae’r nodwedd hon yn ddefnyddiol i gadw fformat gwreiddiol enwau, termau technegol neu unrhyw gynnwys arall na ddylid ei gyfieithu.

import {Translate} from 'tacotranslate/react';

function Component() {
	return (
		<Translate string="Hello, [[[TacoTranslate]]]!" />
	);
}

Yn yr enghraifft hon, bydd y gair “TacoTranslate” yn aros heb ei newid yn y cyfieithiad.

Darparwyr TacoTranslate lluosog

Rydym yn eich annog yn gryf i ddefnyddio sawl darparwr TacoTranslate yn eich cymhwysiad. Mae hyn yn ddefnyddiol ar gyfer trefnu eich cyfieithiadau a'ch llinynnau mewn tarddiadau gwahanol, megis eich penawd, troedyn, neu adrannau penodol.

Gallwch ddarllen rhagor am ddefnyddio tarddiadau yma.

TacoTranslate darparwyr yn etifeddu gosodiadau oddi wrth unrhyw ddarparwr rhiant, felly ni fydd rhaid i chi ailadrodd unrhyw osodiadau eraill.

import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate} from 'tacotranslate/react';

const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});

function Header() {
	return (
		<TacoTranslate origin="header">
			// ...
		</TacoTranslate>
	);
}

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

export default function App() {
	return (
		<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
			<Header />
			<Menu />
		</TacoTranslate>
	);
}

Disodli tarddiad neu leoliad

Yn ogystal â defnyddio sawl darparwr TacoTranslate, gallwch hefyd 'override' y ddau origin a locale ar lefelau'r gydran Translate a'r hook useTranslation.

import {Translate, useTranslation} from 'tacotranslate/react';

function Greeting() {
	const spanishHello = useTranslation('Hello!', {locale: 'es'});

	return (
		<>
			{spanishHello}
			<Translate string="What’s up?" origin="greeting" />
		</>
	);
}

Delio â'r llwytho

Wrth newid ieithoedd ar ochr y cleient, gallai llwytho cyfieithiadau gymryd ychydig eiliadau, yn dibynnu ar gysylltiad y defnyddiwr. Gallwch ddangos dangosydd llwytho i wella profiad y defnyddiwr drwy ddarparu adborth gweledol yn ystod y newid.

import {useTacoTranslate} from 'tacotranslate/react';

function Component() {
	const {isLoading} = useTacoTranslate();

	return (
		isLoading ? 'Translations are loading...' : null
	);
}

Lluosogi

Er mwyn delio â lluosogrwydd a dangos labeli sy'n seiliedig ar y nifer yn gywir mewn ieithoedd gwahanol, ystyrir hyn yn arfer gorau:

import {Translate, useLocale} from 'tacotranslate/react';

function PhotoCount() {
	const locale = useLocale();
	const count = 1;

	return count === 0 ? (
		<Translate string="You have no photos." />
	) : count === 1 ? (
		<Translate string="You have 1 photo." />
	) : (
		<Translate
			string="You have {{count}} photos."
			variables={{count: count.toLocaleString(locale)}}
		/>
	);
}

Ieithoedd lluosog

Er mwyn cefnogi sawl iaith ar yr un pryd yn yr un ap, gallwch ddefnyddio sawl ddarparwr TacoTranslate gyda gwahanol werthoedd locale fel y dangosir isod:

Gallwch hefyd drosysgrifennu'r locale ar lefel y cydran neu'r hook.

import createTacoTranslateClient from 'tacotranslate';
import {TacoTranslate, Translate} from 'tacotranslate/react';

const tacoTranslateClient = createTacoTranslateClient({apiKey: 'YOUR_API_KEY'});

function Spanish() {
	return (
		<TacoTranslate locale="es">
			<Translate string="Hello, world in Spanish!" />
		</TacoTranslate>
	);
}

function Norwegian() {
	return (
		<TacoTranslate locale="no">
			<Translate string="Hello, world in Norwegian!" />
		</TacoTranslate>
	);
}

export default function App() {
	return (
		<TacoTranslate client={tacoTranslateClient} origin="page" locale="es">
			<Spanish />
			<Norwegian />
		</TacoTranslate>
	);
}

Defnyddio IDau cyfieithu

Gallwch ychwanegu id at y cydran Translate i drin cyfieithiadau neu ystyron gwahanol ar gyfer yr un llinyn. Mae hyn yn arbennig o ddefnyddiol pan fo'r un testun yn gofyn am gyfieithiadau gwahanol yn dibynnu ar y cyd-destun. Drwy roi IDau unigryw, gwnewch yn siŵr bod pob enghraifft o'r llinyn yn cael ei gyfieithu'n gywir yn unol â'i ystyr penodol.

import {Translate} from 'tacotranslate/react';

function Header() {
	return (
		<Translate id="header" string="Login" />
	);
}

function Footer() {
	return (
		<Translate id="footer" string="Login" />
	);
}

Er enghraifft, gallai mewngofnodi yn y pennawd gyfieithu i “Iniciar sesión”, tra gallai mewngofnodi yn y troedyn gyfieithu i “Acceder” yn Sbaeneg.

Ymarferion gorau

Cynnyrch gan NattskiftetWedi'i wneud yn Norwy