Пређи на садржај
i18n-error-base
Српски
Esc
↑↓навигација↵отвори⌘Jпреглед
На овој страници

i18n-error-base

Основна класа за Error која пребацује поруке о грешкама у складу са језичким подешавањем Valibot-а.

Error основна класа која пребацује message са 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 се при сваком читању односи на lang. Промените без поновног стварања инстанци. Нерегистровани језици користе подразумевану поруку из конструктора.

Карактеристике

  • Динамички разрешава message са Valibot setGlobalConfig({ lang })
  • Накнадно региструје поруке по језику са setErrorMessage. Дозвољене су и функције које примају meta
  • Нерегистровани језици користе подразумевану поруку из конструктора
  • Додаје префикс путем static prefix по класи
  • Чува meta и прослеђује га фабричким функцијама порука
  • instanceof Error, cause и stack раде као обично

Структура

Како ради

message се при сваком читању разрешава следећим редом.

  1. Преузима lang из getGlobalConfig(). "en" када није подешено
  2. Ако постоји регистрација (класа × lang), извршава је са meta
  3. Иначе враћа подразумевану поруку из конструктора
  4. Ако је подешен static prefix, додаје се на почетак

Следећи кораци

Почните од инсталације, па ток погледајте у употреби. Детаљи су у АПИ референци.

Да ли вам је ова страница помогла?