i18n-error-base
Osnovna klasa za Error koja prebacuje poruke o pogreškama u skladu s jezičnom postavkom Valibota.
Error osnovna klasa koja prebacuje message s Valibot lang.
import { setGlobalConfig } from "valibot";
import { I18nErrorBase, setErrorMessage } from "i18n-error-base";
class NotFoundError extends I18nErrorBase<{ resource: string }> {}
setErrorMessage(NotFoundError, ({ resource }) => `リソースが見つかりません: ${resource}`, "ja");
setErrorMessage(NotFoundError, ({ resource }) => `Resource not found: ${resource}`, "en");
const error = new NotFoundError({ resource: "user" }, "fallback message");
setGlobalConfig({ lang: "ja" });
console.log(error.message); // リソースが見つかりません: user
setGlobalConfig({ lang: "en" });
console.log(error.message); // Resource not found: user
message se pri svakom čitanju odnosi na lang. Prebacite bez ponovnog stvaranja instanci. Neregistrirani jezici koriste zadanu poruku iz konstruktora.
Značajke
- Dinamički razrješava
messages ValibotsetGlobalConfig({ lang }) - Naknadno registrira poruke po jeziku s
setErrorMessage. Dopuštene su i funkcije koje primajumeta - Neregistrirani jezici koriste zadanu poruku iz konstruktora
- Dodaje prefiks putem
static prefixpo klasi - Čuva
metai prosljeđuje ga tvorničkim funkcijama poruka instanceof Error,causeistackrade kao obično
Struktura
Instalacija
Kako dodati paket i peer ovisnost.
Korištenje
Od definicije do prebacivanja, prefiksa i zamjene.
API referenca
Specifikacije za I18nErrorBase i setErrorMessage.
Kako funkcionira
message se pri svakom čitanju razrješava sljedećim redom.
- Dohvaća
langizgetGlobalConfig()."en"kad nije postavljeno - Ako postoji registracija
(klasa × lang), izvršava je smeta - Inače vraća zadanu poruku iz konstruktora
- Ako je postavljen
static prefix, dodaje ga na početak
Sljedeći koraci
Počnite s instalacijom, pa tijek pogledajte u korištenju. Detalji su u API referenci.