MDUIDocs
Kopírovat odkaz llms.txtKopírovat odkaz llms-full.txtZobrazit tuto stránku jako MarkdownDiskutovat o této stránce s ChatGPTDiskutovat o úplné dokumentaci projektu s ChatGPT
Přednastavená barva
Vlastní barva
Extrahovat barvu z tapety
Vyberte prosím tapetu
Začínáme
Úvod Instalace Rychlý start Podpora TypeScriptu Podpora IDE Lokalizace Časté dotazy
Vývoj s pomocí AI
Styly
Integrace s frameworky
Komponenty
Funkce
Knihovny

Lokalizace

mdui interně používá angličtinu. Pokud potřebujete jiný jazyk, je nutné nastavit vícejazyčnou konfiguraci.

Způsob použití

mdui nabízí tři funkce pro práci s lokalizací:

  • loadLocale: Načte jazykový balíček. Parametrem je funkce, která přijímá kód jazyka jako parametr a vrací Promise. Když je jazykový balíček načten, Promise je vyřešen (resolve) na odpovídající jazykový balíček. Zavolejte tuto funkci ve vstupním souboru projektu.
  • setLocale: Přepne na zadaný jazyk. Parametrem je nový kód jazyka, návratovou hodnotou je Promise, který je vyřešen po načtení nového jazykového balíčku.
  • getLocale: Získá aktuální kód jazyka.

Příklad použití:

import { loadLocale } from 'mdui/functions/loadLocale.js';
import { setLocale } from 'mdui/functions/setLocale.js';
import { getLocale } from 'mdui/functions/getLocale.js';

// Na vstupu projektu zavolejte loadLocale pro načtení jazykového balíčku
loadLocale((locale) => import(`../node_modules/mdui/locales/${locale}.js`));

// Když potřebujete přepnout jazyk, zavolejte tuto funkci. Po vyřešení (resolve) Promise je přepnutí jazyka dokončeno
setLocale('zh-cn').then(() => {
  // Voláním getLocale získáte aktuální kód jazyka
  console.log(getLocale()); // zh-cn
});

Události stavu

Na začátku, konci a při selhání přepínání jazyka se na window spustí událost mdui-localize-status. Můžete ji poslouchat a provádět vlastní akce, například zapsat kód jazyka do cookie po úspěšném přepnutí jazyka.

Vlastnost detail.status události popisuje, k jaké změně stavu došlo. Možné hodnoty: loading, ready, error:

detail.status Popis
loading

Začíná se načítat nový jazykový balíček.

Objekt detail obsahuje:

  • loadingLocale: Kód jazyka nově načítaného jazykového balíčku.
ready

Nový jazykový balíček byl úspěšně načten.

Objekt detail obsahuje:

  • readyLocale: Kód jazyka nově načteného jazykového balíčku.
error

Načtení nového jazykového balíčku selhalo.

Objekt detail obsahuje:

  • errorLocale: Kód jazyka jazykového balíčku, jehož načtení selhalo.
  • errorMessage: Chybová zpráva při selhání načtení.

Příklad použití:

window.addEventListener('mdui-localize-status', (event) => {
  if (event.detail.status === 'loading') {
    console.log(
      `Začíná se načítat nový jazykový balíček: ${event.detail.loadingLocale}`,
    );
  } else if (event.detail.status === 'ready') {
    console.log(
      `Nový jazykový balíček ${event.detail.readyLocale} byl úspěšně načten`,
    );
  } else if (event.detail.status === 'error') {
    console.error(
      `Načtení nového jazykového balíčku ${event.detail.errorLocale} selhalo: ${event.detail.errorMessage}`,
    );
  }
});

Způsoby načtení jazykového balíčku

Líné načítání

Použití dynamického importu umožňuje stáhnout odpovídající jazykový balíček až při přepnutí na daný jazyk. Toto je nejdoporučovanější metoda.

import { loadLocale } from 'mdui/functions/loadLocale.js';

loadLocale((locale) => import(`../node_modules/mdui/locales/${locale}.js`));

Přednačítání

Při načítání stránky se předem stáhnou všechny potřebné jazykové balíčky. To znamená, že při přepínání jazyků není nutné další stahování, což činí přepínání jazyků rychlejším.

import { loadLocale } from 'mdui/functions/loadLocale.js';

const localizedTemplates = new Map([
  ['zh-cn', import(`../node_modules/mdui/locales/zh-cn.js`)],
  ['zh-tw', import(`../node_modules/mdui/locales/zh-tw.js`)],
]);

loadLocale(async (locale) => localizedTemplates.get(locale));

Statický import

Tato metoda umožňuje zabalit všechny potřebné jazykové balíčky do jednoho souboru spolu s kódem vašeho projektu, takže již není nutné stahovat jazykové balíčky samostatně.

import { loadLocale } from 'mdui/functions/loadLocale.js';
import * as locale_zh_cn from 'mdui/locales/zh-cn.js';
import * as locale_zh_tw from 'mdui/locales/zh-tw.js';

const localizedTemplates = new Map([
  ['zh-cn', locale_zh_cn],
  ['zh-tw', locale_zh_tw],
]);

loadLocale(async (locale) => localizedTemplates.get(locale));

Načtení jazykového balíčku přes CDN

Pokud používáte mdui přes CDN, můžete jazykový balíček načíst přímo z CDN. Příklad použití:

<script src="https://unpkg.com/mdui@2/mdui.global.js"></script>

<script>
  mdui.loadLocale(
    (locale) => import(`https://unpkg.com/mdui@2/locales/${locale}.js`),
  );
  mdui.setLocale('zh-cn');
</script>

Podporované jazyky

mdui v současné době podporuje následující jazyky:

Jazyk Kód jazyka
arabština ar-eg
ázerbájdžánština az-az
bulharština bg-bg
bengálština (Bangladéš) bn-bd
běloruština be-by
katalánština ca-es
čeština cs-cz
dánština da-dk
němčina de-de
řečtina el-gr
angličtina en-gb
angličtina (americká) en-us
španělština es-es
estonština et-ee
perština fa-ir
finština fi-fi
francouzština (Belgie) fr-be
francouzština (Kanada) fr-ca
francouzština (Francie) fr-fr
irština ga-ie
galicijština (Španělsko) gl-es
hebrejština he-il
hindština hi-in
chorvatština hr-hr
maďarština hu-hu
arménština hy-am
indonéština id-id
italština it-it
islandština is-is
japonština ja-jp
gruzínština ka-ge
khmérština km-kh
severní kurdština kmr-iq
kannadština kn-in
kazaština kk-kz
korejština ko-kr
litevština lt-lt
lotyština lv-lv
makedonština mk-mk
malajálamština ml-in
mongolština mn-mn
malajština (Malajsie) ms-my
norština nb-no
nepálština ne-np
nizozemština (Belgie) nl-be
nizozemština nl-nl
polština pl-pl
portugalština (Brazílie) pt-br
portugalština pt-pt
rumunština ro-ro
ruština ru-ru
slovenština sk-sk
srbština sr-rs
slovinština sl-si
švédština sv-se
tamilština ta-in
thajština th-th
turečtina tr-tr
urdština (Pákistán) ur-pk
ukrajinština uk-ua
vietnamština vi-vn
zjednodušená čínština zh-cn
tradiční čínština (Hongkong) zh-hk
tradiční čínština (Tchaj-wan) zh-tw

Odeslání nového překladu

Chcete-li přispět novým překladem nebo vylepšit stávající překlad, vytvořte prosím Pull Request na Githubu. Jazykové balíčky se nacházejí v packages/mdui/src/xliff. Můžete je upravovat přímo na Githubu.

Obsah na této stránce