TacoTranslate
/
DokumentasiHarga
 
  1. Pendahuluan
  2. Memulai
  3. Penyiapan dan konfigurasi
  4. Menggunakan TacoTranslate
  5. Rendering di sisi server
  6. Penggunaan Lanjutan
  7. Praktik terbaik
  8. Penanganan kesalahan dan debugging
  9. Bahasa yang didukung

Menggunakan TacoTranslate

Menerjemahkan string

Saat ini ada tiga cara untuk menerjemahkan string: komponen Translate, hook useTranslation, atau utilitas translateEntries.


Menggunakan komponen Translate.
Menampilkan terjemahan di dalam elemen span, dan mendukung perenderan HTML.

import {Translate} from 'tacotranslate/react';

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

Anda dapat mengubah tipe elemen menggunakan, misalnya, as="p" pada komponen.


Menggunakan hook useTranslation.
Mengembalikan terjemahan sebagai string biasa. Berguna, misalnya, dalam tag meta.

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

Menggunakan utilitas translateEntries.
Terjemahkan string di sisi server. Beri dorongan pada gambar OpenGraph Anda.

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

Bagaimana string diterjemahkan

Ketika string mencapai server kami, kami pertama-tama memvalidasi dan menyimpannya, lalu segera mengembalikan terjemahan mesin. Meskipun terjemahan mesin umumnya memiliki kualitas yang lebih rendah dibandingkan terjemahan AI kami, terjemahan tersebut memberikan respons awal yang cepat.

Secara bersamaan, kami memulai pekerjaan terjemahan asinkron untuk menghasilkan terjemahan AI mutakhir dan berkualitas tinggi untuk string Anda. Setelah terjemahan AI siap, terjemahan tersebut akan menggantikan terjemahan mesin dan akan dikirim kapan pun Anda meminta terjemahan untuk string Anda.

Jika Anda telah menerjemahkan sebuah string secara manual, terjemahan tersebut akan diutamakan dan dikembalikan.

Memanfaatkan origin

Proyek TacoTranslate berisi apa yang kami sebut origins. Anggap saja mereka sebagai titik masuk, folder, atau grup untuk string dan terjemahan Anda.

import {TacoTranslate} from 'tacotranslate/react';

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

Origins memungkinkan Anda memisahkan string ke dalam wadah yang bermakna. Misalnya, Anda dapat memiliki satu origin untuk dokumentasi dan satu lagi untuk halaman pemasaran Anda.

Untuk kontrol yang lebih terperinci, Anda dapat mengatur origins pada tingkat komponen.

Untuk mencapai ini, pertimbangkan menggunakan beberapa penyedia TacoTranslate dalam proyek Anda.

Harap dicatat bahwa string yang sama mungkin memiliki terjemahan yang berbeda pada origin yang berbeda.

Pada akhirnya, bagaimana Anda memisahkan string ke dalam origins terserah pada Anda dan kebutuhan Anda. Namun, perhatikan bahwa memiliki banyak string dalam satu origin dapat meningkatkan waktu pemuatan.

Menangani variabel

Anda harus selalu menggunakan variabel untuk konten dinamis, seperti nama pengguna, tanggal, alamat surel, dan lainnya.

Variabel dalam string dideklarasikan menggunakan tanda kurung ganda, seperti {{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}});
}

Mengelola konten HTML

Secara default, komponen Translate mendukung dan merender konten HTML. Namun, Anda dapat menonaktifkan perilaku ini dengan mengatur useDangerouslySetInnerHTML ke false.

Menonaktifkan perenderan HTML sangat disarankan saat menerjemahkan konten yang tidak tepercaya, seperti konten yang dibuat oleh pengguna.

Semua output selalu disanitasi dengan sanitize-html sebelum dirender.

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

Contoh di atas akan dirender sebagai teks biasa.

Rendering di sisi server

Sebuah produk dari NattskiftetDibuat di Norwegia