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 استفاده شود.

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

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

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

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