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