Eng yaxshi tajribalar
URL manzillarini o‘zgaruvchilarga joylashtiring
URL manzillarini yoki shunga o‘xshash ma’lumotlarni o‘z ichiga olgan satrlarni tarjima qilayotganda, ushbu URL manzillarni o‘zgaruvchilarga joylashtirish va keyin ularni shablonlaringizda murojaat qilish yaxshi amaliyot hisoblanadi.
<Translate
string={`Click <a href="{{url}}">here</a>`}
variables={{url: 'https://tacotranslate.com'}}
/>
ARIA yorliqlaridan foydalaning
Tugmalar kabi interaktiv elementlarning matnini tarjima qilayotganda, kirish imkoniyatini ta'minlash uchun ARIA yorliqlarini kiritish muhimdir. ARIA yorliqlari ekran o'qiydigan qurilmalarga elementning funksiyasi haqida tavsifiy ma'lumot berishga yordam beradi.
Masalan, agar sizda foydalanuvchilarga kod blokidan matnni nusxalash imkonini beruvchi tugma bo'lsa, siz aniqlik kiritish uchun aria-label
atributidan foydalanishingiz mumkin:
<Translate
aria-label={useTranslation('Copy to clipboard')}
string="Copy"
/>
Buning haqida nimadir juda metadir.
Global origins array va bir nechta komponent manbalari
Bu uslub faqat Next.js Pages Router dan foydalanilganda ishlaydi.
Kattaroq ilovalar bilan ishlaganda, satrlarni va tarjimalarni bir nechta, kichikroq manbalarga bo‘lish foydali bo‘ladi. Bu yondashuv paket hajmini va uzatish vaqtini kamaytirishga yordam beradi, shuningdek, samarali va kengaytiriladigan lokalizatsiyaga imkon yaratadi.
Bu faqat mijoz tomonida render qilinganda oddiy bo‘lsa-da, server tomonida render uchun tarjimalarni olishda manbalarni boshqarish tezda murakkablashadi. Biroq, TacoTranslate mijozining origins
massividan foydalanib, manba boshqaruvini avtomatlashtirishingiz mumkin.
Mana bir misol, unda biz komponentlar va sahifalarni alohida fayllarga ajratdik.
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>
);
}
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});
}
Ko'proq ma'lumot uchun getTacoTranslateStaticProps
haqida bizning server tomon rendering misollarimizga qarang.