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ı
getGlobalConfig()işlevindenlangalınır (ayarlanmamışsa"en")- O sınıf ve dile kayıtlı işlev
metaile çalıştırılır - Kayıt yoksa varsayılan mesaj kullanılır
static prefixvarsa 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
langvarsayı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