TacoTranslate
/
DokumentasyonPresyo
 
  1. Panimula
  2. Pagsisimula
  3. Pag-setup at pagsasaayos
  4. Paggamit ng TacoTranslate
  5. Pag-render sa server
  6. Advanced na paggamit
  7. Mga pinakamahusay na kasanayan
  8. Pamamahala ng mga error at pag-debug
  9. Mga sinusuportahang wika

Advanced na paggamit

Pamamahala ng mga wikang mula kanan papuntang kaliwa

Pinapadali ng TacoTranslate ang pagsuporta sa mga wikang nagbabasa mula kanan papuntang kaliwa (RTL), gaya ng Arabe at Hebreo, sa iyong mga React na aplikasyon. Tinitiyak ng tamang paghawak ng mga RTL na wika na ipinapakita nang tama ang iyong nilalaman para sa mga gumagamit na nagbabasa mula kanan papuntang kaliwa.

import {useTacoTranslate} from 'tacotranslate/react';

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

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

Maaari mo ring gamitin ang ibinigay na function na isRightToLeftLocaleCode upang suriin ang kasalukuyang wika sa labas ng React.

import {isRightToLeftLocaleCode} from 'tacotranslate';

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

Pagpapatigil sa pagsasalin

Upang huwag isalin ang mga partikular na bahagi ng isang string o upang matiyak na ang ilang bahagi ay mananatiling hindi nababago, maaari mong gamitin ang tatlong magkakasunod na square brackets. Kapaki-pakinabang ang tampok na ito para mapanatili ang orihinal na anyo ng mga pangalan, mga teknikal na termino, o anumang ibang nilalaman na hindi dapat isalin.

import {Translate} from 'tacotranslate/react';

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

Sa halimbawang ito, ang salitang “TacoTranslate” ay mananatiling hindi nababago sa pagsasalin.

Maramihang provider ng TacoTranslate

Mariin naming hinihikayat ang paggamit ng maramihang TacoTranslate providers sa iyong app. Kapaki-pakinabang ito para ayusin ang iyong mga pagsasalin at mga string sa iba't ibang pinagmulan, tulad ng iyong header, footer, o mga partikular na seksyon.

Maaari kang magbasa pa tungkol sa paggamit ng mga pinagmulan dito.

Namamana ng mga provider ng TacoTranslate ang mga setting mula sa anumang magulang na provider, kaya hindi mo na kailangang ulitin ang iba pang mga setting.

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

Pag-override ng origin o locale

Bilang karagdagan sa paggamit ng maraming TacoTranslate provider, maaari mo ring i-override ang parehong origin at locale sa antas ng Translate na komponent at useTranslation na hook.

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

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

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

Pamamahala ng paglo-load

Kapag binabago ang wika sa client side, maaaring tumagal nang ilang sandali ang pagkuha ng mga pagsasalin depende sa koneksyon ng gumagamit. Maaari kang magpakita ng indikador ng paglo-load upang mapabuti ang karanasan ng gumagamit sa pamamagitan ng pagbibigay ng biswal na tugon habang isinasagawa ang paglipat.

import {useTacoTranslate} from 'tacotranslate/react';

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

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

Pluralisasyon

Upang wastong hawakan ang pluralisasyon at maipakita nang tama ang mga label na nakabatay sa bilang sa iba't ibang wika, itinuturing itong pinakamainam na kasanayan:

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

Maraming wika

Upang suportahan ang maraming wika nang sabay-sabay sa parehong aplikasyon, maaari kang gumamit ng maramihang TacoTranslate provider na may iba't ibang mga halaga ng locale tulad ng ipinapakita sa ibaba:

Maaari mo ring i-override ang locale sa antas ng component o 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>
	);
}

Paggamit ng mga ID ng pagsasalin

Maaari kang magdagdag ng id sa Translate na komponent upang hawakan ang magkakaibang pagsasalin o kahulugan para sa parehong string. Partikular itong kapaki-pakinabang kapag ang parehong teksto ay nangangailangan ng magkakaibang pagsasalin batay sa konteksto. Sa pamamagitan ng pagtalaga ng mga natatanging ID, tinitiyak mong ang bawat halimbawa ng string ay maisasalin nang wasto ayon sa partikular nitong kahulugan.

import {Translate} from 'tacotranslate/react';

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

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

Halimbawa, ang login sa header ay maaaring isalin bilang “Iniciar sesión”, at ang login sa footer ay maaaring isalin bilang “Acceder” sa Espanyol.

Mga pinakamahusay na kasanayan

Isang produkto mula sa NattskiftetGawa sa Norway