Skip to content

Internationalisierung

Graphic Walker enthaelt integrierte Uebersetzungen und unterstuetzt benutzerdefinierte Sprachressourcen.

Integrierte Sprachen

SprachcodeSprache
en-USEnglisch (Standard)
zh-CNChinesisch (vereinfacht)
ja-JPJapanisch

Sprache einstellen

Verwenden Sie die i18nLang-Prop:

<GraphicWalker
  data={data}
  fields={fields}
  i18nLang="ja-JP"
/>

Benutzerdefinierte Uebersetzungen

Stellen Sie Ihre eigenen Uebersetzungen mit der i18nResources-Prop bereit. Das Ressourcenobjekt ist nach Sprachcode indiziert, mit verschachtelten Uebersetzungsschluesseln:

const customTranslations = {
  'fr-FR': {
    'main.tabpanel.DataSource': 'Source de données',
    'main.tabpanel.DataSource.btn': 'Ouvrir la source de données',
    'main.tabpanel.settings': 'Paramètres',
    // ... more keys
  },
};
 
<GraphicWalker
  data={data}
  fields={fields}
  i18nLang="fr-FR"
  i18nResources={customTranslations}
/>

Integrierte Uebersetzungen ueberschreiben

Sie koennen bestimmte Schluessel in einer vorhandenen Sprache ueberschreiben, ohne die gesamte Uebersetzung zu ersetzen:

const overrides = {
  'en-US': {
    'main.tabpanel.DataSource': 'Data Input',
  },
};
 
<GraphicWalker
  data={data}
  fields={fields}
  i18nLang="en-US"
  i18nResources={overrides}
/>

Uebersetzungsschluessel finden

Uebersetzungsschluessel folgen einer Punkt-Notation-Hierarchie. Der vollstaendige Satz von Schluesseln ist im Graphic Walker-Quellcode (opens in a new tab) verfuegbar. Ueberpruefen Sie die en-US.json-Datei fuer die vollstaendige Liste uebersetzbare Zeichenketten.

Beispiel: Mehrsprachige App

import { useState } from 'react';
import { GraphicWalker } from '@kanaries/graphic-walker';
 
const LANGUAGES = [
  { code: 'en-US', label: 'English' },
  { code: 'zh-CN', label: '中文' },
  { code: 'ja-JP', label: '日本語' },
];
 
function App() {
  const [lang, setLang] = useState('en-US');
 
  return (
    <div>
      <select value={lang} onChange={e => setLang(e.target.value)}>
        {LANGUAGES.map(l => (
          <option key={l.code} value={l.code}>{l.label}</option>
        ))}
      </select>
 
      <GraphicWalker
        data={data}
        fields={fields}
        i18nLang={lang}
      />
    </div>
  );
}