Bestu vinnubrögð
Settu vefslóðir í breytur
Þegar verið er að þýða strengi sem innihalda vefslóðir eða svipuð gögn er gott að setja þessar vefslóðir í breytur og vísa síðan í þær innan sniðmátanna.
<Translate
string={`Click <a href="{{url}}">here</a>`}
variables={{url: 'https://tacotranslate.com'}}
/>
Notaðu ARIA-merkingar
Þegar þýtt er texta í gagnvirkum þáttum, svo sem hnöppum, er mikilvægt að bæta við ARIA-merkingum til að tryggja aðgengi. ARIA-merkingar hjálpa skjálesurum að veita lýsandi upplýsingar um virkni þáttarins.
Til dæmis, ef þú ert með hnapp sem gerir notendum kleift að afrita texta úr kóðablokk, getur þú notað aria-label
eiginleikann til að gefa skýra lýsingu:
<Translate
aria-label={useTranslation('Copy to clipboard')}
string="Copy"
/>
Eitthvað við þetta er mjög meta.
Alheims upprunafylki og margir upprunir íhluta
Þessi nálgun virkar aðeins þegar notað er Next.js Pages Router.
Þegar unnið er með stærri forrit er gagnlegt að skipta strengjum og þýðingum upp í fleiri, minni uppruna. Þessi aðferð dregur úr stærð pakkninga og flutningstíma og tryggir skilvirka og skalanlega staðfærsla.
Þetta er einfalt þegar aðeins er renderað á klienthliðinni, en stjórnun uppruna verður fljótt flókin þegar þýðingar eru sóttar fyrir birtingu á þjónustuhlið. Hins vegar geturðu sjálfvirknað stjórnun uppruna með því að nota TacoTranslate-klientinn origins
fylki.
Skoðaðu þetta dæmi, þar sem við höfum skipt íhlutum og síðum upp í aðskildar skrár.
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});
}
Sjá dæmi um server-side rendering hjá okkur fyrir frekari upplýsingar um getTacoTranslateStaticProps
.