മികച്ച രീതികൾ
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
-യെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക് ഞങ്ങളുടെ സർവർ-സൈഡ് റെൻഡറിംഗ് ഉദാഹരണങ്ങൾ കാണുക.