বিষয়বস্তুতে যান
i18n-error-base
বাংলা
Esc
↑↓নেভিগেট↵খুলুন⌘Jপ্রিভিউ
এই পৃষ্ঠায়

i18n-error-base

Valibot-এর ভাষা সেটিংয়ের সাথে ত্রুটি বার্তা বদলে দেয় এমন Error-এর বেস ক্লাস।

Valibot-এর lang দিয়ে message বদলে দেয় এমন Error বেস ক্লাস।

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 দেখে। নতুন করে না বানিয়ে বদলান। অনিবন্ধিত ভাষা কনস্ট্রাক্টরের ডিফল্ট বার্তা ব্যবহার করে।

বৈশিষ্ট্য

  • Valibot-এর setGlobalConfig({ lang }) দিয়ে message গতিশীলভাবে রিজলভ করে
  • setErrorMessage দিয়ে পরে প্রতিটি ভাষার বার্তা নিবন্ধন করুন। meta নেওয়া ফাংশনও চলে
  • অনিবন্ধিত ভাষা কনস্ট্রাক্টরের ডিফল্ট বার্তা ব্যবহার করে
  • ক্লাস-প্রতি static prefix দিয়ে উপসর্গ যোগ করে
  • meta সংরক্ষণ করে বার্তা তৈরির ফাংশনে পাঠায়
  • instanceof Error, cause, stack যথাযথভাবে চলে

গঠন

কার্যপ্রণালী

message প্রতিটি পাঠে নিচের ক্রমে রিজলভ হয়।

  1. getGlobalConfig() থেকে lang নেয়। সেট না থাকলে "en"
  2. (ক্লাস × lang) নিবন্ধন থাকলে meta দিয়ে চালায়
  3. না থাকলে কনস্ট্রাক্টরের ডিফল্ট বার্তা ফেরত দেয়
  4. static prefix সেট থাকলে শুরুতে যুক্ত করে

পরবর্তী পদক্ষেপ

ইনস্টলেশন দিয়ে শুরু করুন, ব্যবহারবিধি-তে প্রবাহ দেখুন। বিস্তারিত API রেফারেন্স-তে আছে।

এই পৃষ্ঠাটি কি সহায়ক ছিল?