İçeriğe geç
i18n-error-base
Türkçe
Esc
↑↓gezin↵aç⌘Jönizle
Bu sayfada

API Referansı

I18nErrorBase, setErrorMessage ve ilgili türlerin belirtimi.

I18nErrorBase

Error genişletmek için temel sınıftır. message, lang değerine göre çözülür.

import { I18nErrorBase } from "i18n-error-base";

class MyError extends I18nErrorBase<{ code: string }> {}

Tür parametreleri

Prop Type Default Description
TMeta ErrorMeta | undefined ErrorMeta | undefined meta türü. Kullanılmıyorsa undefined belirtin.

Statik özellikler

Prop Type Default Description
prefix? string undefined Çözümlenmiş mesajın başına eklenir.

Örnek özellikleri

Prop Type Description
meta TMeta Oluşturucudan ek bilgi. Okunabilir ve yazılabilir.
message string Geçerli lang değerine göre çözülür. Numaralandırılabilir.
cause unknown ErrorOptions ile geçirilen neden. Error standart özelliğidir.

Oluşturucu

TMeta değeri undefined içermiyorsa, meta zorunludur.

new MyError(meta, message, options?)

TMeta değeri undefined ise, meta atlanabilir.

new MyError(message, options?)
new MyError(meta, message, options?)
Parametre Tür Açıklama
meta TMeta Mesaj üretiminde kullanılan ek bilgi.
message string | MessageFactory<TMeta> Kayıtsız diller için varsayılan mesaj. İşlev ise meta alır.
options ErrorOptions Error 2. bağımsız değişkeniyle uyumlu seçenekler ({ cause } gibi).

Çözümleme sırası

  1. getGlobalConfig() işlevinden lang alınır (ayarlanmamışsa "en")
  2. O sınıf ve dile kayıtlı işlev meta ile çalıştırılır
  3. Kayıt yoksa varsayılan mesaj kullanılır
  4. static prefix varsa başa eklenir

setErrorMessage

Dile özgü mesaj üretim işlevini kaydeder.

import { setErrorMessage } from "i18n-error-base";

setErrorMessage(MyError, (meta) => `...: ${meta.code}`, "ja");
Parametre Tür Açıklama
reference I18nErrorBaseConstructor I18nErrorBase türevi sınıf. Değilse tür hatası.
message string | (meta) => string Kaydedilecek mesaj. meta türü hedef sınıftan çıkarılır.
lang string | Iterable<string> Hedef dil. Tek kod veya yinelenebilir nesne (dizi gibi).

Aynı sınıf ve dile yeniden kayıt üzerine yazar.

Türler

ErrorMeta

type ErrorMeta = {
  readonly [prop: string]: unknown;
};

TMeta varsayılan kısıtıdır. Rastgele özellikli salt okunur nesne.

ErrorOptions

type ErrorOptions =
  ConstructorParameters<typeof Error> extends [
    message?: unknown,
    options?: (infer TOptions) | undefined,
  ]
    ? TOptions
    : { readonly cause?: unknown };

Error 2. bağımsız değişkeninden türetilmiş türdür. cause geçirilebilir.

MessageFactory<TMeta>

interface MessageFactory<TMeta extends ErrorMeta | undefined = ErrorMeta | undefined> {
  (meta: TMeta): string;
}

meta değerinden mesaj üreten işlevdir. Varsayılan ve kayıtlı için kullanılır.

I18nErrorBaseParams<TMeta>

Oluşturucu bağımsız değişkeni aşırı yüklemeleri.

type I18nErrorBaseParams<TMeta extends ErrorMeta | undefined = ErrorMeta | undefined> =
  [TMeta] extends [undefined]
    ?
        | [message: string | MessageFactory<TMeta>, options?: ErrorOptions | undefined]
        | [meta: undefined, message: string | MessageFactory<TMeta>, options?: ErrorOptions | undefined]
    : [meta: TMeta, message: string | MessageFactory<TMeta>, options?: ErrorOptions | undefined];

meta içermeyen biçim yalnızca TMeta undefined olduğunda izin verilir.

I18nErrorBaseConstructor

interface I18nErrorBaseConstructor {
  new (...args: any): I18nErrorBase;
}

setErrorMessage 1. bağımsız değişkeninin türüdür.

Notlar

  • lang varsayılan değeri "en" olur. setGlobalConfig({ lang }) ile açıkça değiştirin
  • Dil kodu normalleştirme veya geri dönüş zinciri (ör: en-US → en) yoktur. Kayıtsız diller varsayılan mesaj olur

Bu sayfa yardımcı oldu mu?