Mga pangunahing konsepto

May ilang bagay na may matibay na pananaw ang 18ways. Kapag malinaw na ang mga ito, diretso na ang natitirang bahagi ng API surface.

Batayang lokal

Ang iyong baseLocale ay ang wika kung saan ka nagsusulat.

Kung nakasulat sa British English ang text ng iyong produkto, ang base locale mo ay en-GB. Kung nakasulat ito sa American English, ang base locale mo ay en-US.

Kapag tumutugma ang kasalukuyang locale sa base locale, agad na ibinabalik ng 18ways ang source text at nilalaktawan ang trabaho sa pagsasalin.

Target na lokasyon

Ang target na locale mo ay ang wikang kasalukuyang binabasa ng user.

Sa React, karaniwan mo itong iniimbak sa state at ipinapasa sa root Ways.

Mga Konteksto

Ang mga Context ay kung paano pinagsasama-sama ng 18ways ang magkakaugnay na kopya.

Gamitin ang mga ito para mapanatiling maliit ang mga kahilingan sa pagsasalin at upang maiwasan ang paghahalo-halo ng mga tekstong hindi magkakaugnay.

tsx
import { Ways } from '@18ways/react';
 
export function AppRoot() {
  return (
    <Ways apiKey="pk_dummy_demo_token" locale="fr-FR" baseLocale="en-GB" context="marketing">
      <Ways context="hero">
        <Hero />
      </Ways>
      <Ways context="pricing">
        <Pricing />
      </Ways>
    </Ways>
  );
}

Ang mga nested na Ways scope ay pinagsasama sa iisang context path. Ang marketing plus hero ay nagiging marketing.hero.

Mga tanggap na locale

Ipinag-iiba ng 18ways ang pagitan ng:

  • isang locale na makikilala nito, tulad ng fr-FR
  • isang locale na talagang tinatanggap ng iyong proyekto

Maaaring kunin ng runtime ang listahan ng mga tinatanggap na locale mula sa API, pagkatapos ay i-normalize ang mga papasok na value ng locale batay sa listahang iyon.

tsx
import { Ways } from '@18ways/react';
 
export function AppRoot() {
  return (
    <Ways
      apiKey="pk_dummy_demo_token"
      locale="fr-FR"
      baseLocale="en-GB"
      acceptedLocales={['en-GB', 'fr-FR', 'de-DE']}
      context="app"
    >
      <App />
    </Ways>
  );
}

Pagpupunyagi

Ang cookie ng kagustuhan sa locale na ginagamit ng runtime ay 18ways_locale.

Kapag naglo-load ang mga salin

@18ways/react ay puwedeng mag-suspend habang nireresolba ang isang seeded context at pinananatiling may nakabahaging in-memory cache sa client.

Pinagsasaluhang mental na modelo

Panatilihing simple ang modelo:

  1. Piliin ang tamang package para sa iyong app.
  2. Itakda nang tama ang base locale.
  3. Panatilihing matatag at makahulugan ang mga susi ng konteksto.
  4. Hayaang isalin ng runtime ang mga kumpletong parirala, hindi mga piraso.

Susunod: Pag-format ng Mensahe

Changing language
Mga Pangunahing Konsepto