ఉత్తమ ఆచరణలు
URLలను వేరియబుల్స్లో ఉంచండి
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 గా విభజించడం లాభకరం. ఈ పద్ధతి బండిల్ పరిమాణాలు మరియు ట్రాన్స్ఫర్ సమయాలను తగ్గించి సమర్థవంతమైన, స్కేలబుల్ స్థానీకరణను నిర్ధారిస్తుంది.
ఇది కేవలం క్లయింట్ సైడ్లో మాత్రమే రెండరింగ్ చేయబడే సందర్భాల్లో సరళంగా ఉన్నప్పటికీ, సర్వర్-సైడ్ రెండరింగ్ కోసం అనువాదాలను పొందేటప్పుడు origins నిర్వహణ త్వరగా సంక్లిష్టమవుతుంది. అయితే, మీరు TacoTranslate క్లయింట్ origins
అర్రేను ఉపయోగించి origins నిర్వహణను ఆటోమేట్ చేయవచ్చు.
మేము మా కాంపోనెంట్లు మరియు పేజీలను వేర్వేరు ఫైళ్లుగా విడగొట్టిన ఈ ఉదాహరణను పరిశీలించండి.
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});
}
మరింత సమాచారం కోసం మా సర్వర్-సైడ్ రండరింగ్ ఉదాహరణలు చూడండి getTacoTranslateStaticProps
.