Kernkonzepte

18ways hat zu einigen Dingen eine klare Meinung. Sobald diese klar sind, ist der Rest der API-Oberfläche einfach.

Basislokalisierung

Ihre baseLocale ist die Sprache, in der Sie schreiben.

Wenn Ihr Produkttext in britischem Englisch verfasst ist, ist Ihre Basislokalisierung en-GB. Wenn er in amerikanischem Englisch verfasst ist, ist Ihre Basislokalisierung en-US.

Wenn die aktuelle Sprache mit der Basissprache übereinstimmt, gibt 18ways den Quelltext sofort zurück und überspringt die Übersetzungsarbeit.

Zielgebiet

Ihre Zielregion ist die Sprache, die der Benutzer gerade liest.

In React hält man es normalerweise im Zustand und übergibt es an die Wurzel Ways.

Kontexte

Kontexte sind, wie 18ways verwandte Texte gruppiert.

Verwenden Sie sie, um Übersetzungsanfragen klein zu halten und um zu vermeiden, dass nicht verwandte Texte vermischt werden.

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

Verschachtelte Ways-Scopes fügen sich zu einem Kontextpfad zusammen. marketing plus hero wird zu marketing.hero.

Akzeptierte Regionen

18ways unterscheidet zwischen:

  • eine Sprache, die es erkennen kann, wie fr-FR
  • eine Gebietsschema, das Ihr Projekt tatsächlich akzeptiert

Die Laufzeit kann die akzeptierte Gebietsschema-Liste von der API abrufen und dann die eingehenden Gebietsschema-Werte mit dieser Liste normalisieren.

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

Persistenz

Das von der Laufzeit verwendete Cookie für die Gebietsschema-Präferenz ist 18ways_locale.

Wenn Übersetzungen geladen werden

@18ways/react kann aussetzen, während ein gesäter Kontext aufgelöst wird und einen gemeinsamen In-Memory-Cache auf dem Client beibehält.

Geteiltes mentales Modell

Halten Sie das Modell einfach:

  1. Wählen Sie das richtige Paket für Ihre App aus.
  2. Stellen Sie die Basislokalisierung korrekt ein.
  3. Halten Sie die Kontextschlüssel stabil und sinnvoll.
  4. Lassen Sie die Laufzeit vollständige Sätze und nicht Fragmente übersetzen.

Nächste: Nachrichtenformatierung