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ساخت نروژ