TacoTranslate
/
مستنداتقیمت‌گذاری
 
  1. مقدمه
  2. شروع کار
  3. راه‌اندازی و پیکربندی
  4. استفاده از TacoTranslate
  5. رندرینگ سمت سرور
  6. استفاده پیشرفته
  7. بهترین روش‌ها
  8. مدیریت خطا و اشکال‌زدایی
  9. زبان‌های پشتیبانی شده

بهترین روش‌ها

آدرس‌های URL را در متغیرها قرار دهید

وقتی که رشته‌هایی را که شامل آدرس‌های URL یا داده‌های مشابه هستند ترجمه می‌کنید، قرار دادن این آدرس‌ها داخل متغیرها و سپس ارجاع دادن به آن‌ها در قالب‌های خود، به عنوان یک روش خوب در نظر گرفته می‌شود.

<Translate
	string={`Click <a href="{{url}}">here</a>`}
	variables={{url: 'https://tacotranslate.com'}}
/>

استفاده از برچسب‌های ARIA

وقتی متن عناصری تعاملی مانند دکمه‌ها را ترجمه می‌کنید، مهم است که برچسب‌های ARIA را برای اطمینان از قابلیت دسترسی در نظر بگیرید. برچسب‌های ARIA به صفحه‌خوان‌ها کمک می‌کنند تا اطلاعات توضیحی درباره عملکرد عنصر ارائه دهند.

برای مثال، اگر دکمه‌ای دارید که به کاربران اجازه می‌دهد متن را از یک بلوک کد کپی کنند، می‌توانید از صفت aria-label برای ارائه توضیحی واضح استفاده کنید:

<Translate
	aria-label={useTranslation('Copy to clipboard')}
	string="Copy"
/>

چیزی در مورد این حس بسیار مفهومی است.

آرایهٔ منبع‌های جهانی و منبع‌های چندگانهٔ کامپوننت‌ها

این الگو تنها هنگام استفاده از Next.js Pages Router کار می‌کند.

وقتی با برنامه‌های بزرگ‌تر کار می‌کنید، تقسیم رشته‌ها و ترجمه‌ها به چندین منبع کوچک‌تر مفید است. این روش به کاهش اندازه بسته‌ها و زمان انتقال کمک می‌کند و محلی‌سازی کارآمد و مقیاس‌پذیر را تضمین می‌کند.

در حالی که این کار هنگام رندر کردن فقط در سمت کلاینت ساده است، مدیریت منابع هنگام واکشی ترجمه‌ها برای رندر سمت سرور به سرعت پیچیده می‌شود. با این حال، می‌توانید مدیریت منابع را با استفاده از آرایه origins کلاینت TacoTranslate به صورت خودکار انجام دهید.

این مثال را در نظر بگیرید، جایی که ما کامپوننت‌ها و صفحات خود را به فایل‌های جداگانه تقسیم کرده‌ایم.

components/pricing-table.tsx
import TacoTranslate, {Translate} from 'tacotranslate/react';
import tacoTranslate from '../tacotranslate-client';

// Set an origin name for this component
const origin = 'components/pricing-table';

// Push the origin into the origins array as this file is imported
tacoTranslate.origins.push(origin);

export default function PricingTable() {
	return (
		<TacoTranslate origin={origin}>
			<Translate string="Pricing table" />
			// ...
		</TacoTranslate>
	);
}
pages/pricing.tsx
import TacoTranslate, {Translate} from 'tacotranslate/react';
import getTacoTranslateStaticProps from 'tacotranslate/next/get-static-props';
import tacoTranslateClient from '../tacotranslate-client';
import PricingTable from '../components/pricing-table';

const origin = 'pages/pricing';
tacoTranslateClient.origins.push(origin);

export default function PricingPage() {
	return (
		<TacoTranslate origin={origin}>
			<Translate string="Pricing page" />
			<PricingTable />
		</TacoTranslate>
	);
}

// We will now fetch translations for all imported components and their origins automatically
export async function getStaticProps(context) {
	return getTacoTranslateStaticProps(context, {client: tacoTranslateClient});
}

نمونه‌های رندر سمت سرور ما را ببینید برای اطلاعات بیشتر درباره getTacoTranslateStaticProps.

مدیریت خطا و اشکال‌زدایی

یک محصول از Nattskiftetساخت نروژ