वैनिला JS उपयोग
कोर इंजन आपको रनटाइम व्यवहार देता है। आपका ऐप तय करता है कि इसे कैसे प्रस्तुत करना है।
प्रति क्षेत्र संदर्भ
इंजन पर एक डिफ़ॉल्ट कॉन्टेक्स्ट सेट करें, फिर ज़रूरत पड़ने पर विशिष्ट कॉल्स के लिए उसे ओवरराइड करें.
const engine = create18waysEngine({
apiKey: 'pk_dummy_demo_token',
baseLocale: 'en-GB',
locale: 'fr-FR',
context: 'app',
});
const payNow = await engine.t('Pay now', {
context: 'checkout.button',
});चर एक ही तरह से काम करते हैं
const line = await engine.t('Hello {name}', {
vars: { name: 'Ada' },
});React में इस्तेमाल होने वाला वही waysParser सिंटैक्स यहाँ भी काम करता है.
कैश व्यवहार
इंजन मेमोरी में एक अनुवाद स्टोर रखता है।
इसका मतलब है:
- नए स्ट्रिंग या लोकेल के लिए पहला अनुरोध API को हिट कर सकता है
- बाद के अनुरोध स्टोर से सर्व किए जा सकते हैं
- यदि अनुवाद पहले से ही कैश में हों, तो किसी पिछले लोकेल पर वापस स्विच करना सस्ता होता है
अपनी खुद की लोकेल नियंत्रण लाएँ
Vanilla JS में, लोकेल बदलना स्पष्ट होता है.
async function setLocale(locale) {
engine.setLocale(locale);
await render();
}यह इस बात का बेहतर मेल है, बजाय इसके कि दिखावा किया जाए कि core package routing या React state का मालिक है।
मुख्य पैकेज में कब बने रहना चाहिए
अगर आप अधिकतम नियंत्रण चाहते हैं, तो यहीं रहें।
जब आप चाहें, React या Next पैकेज पर अपग्रेड करें:
- JSX अनुवाद प्रिमिटिव्स
- अंतर्निर्मित लोकेल हुक्स
- एडाप्टर-प्रबंधित रूटिंग और मेटाडेटा