मुख्य अवधारणाएँ
18ways कुछ बातों को लेकर स्पष्ट राय रखता है। एक बार ये साफ हो जाएँ, तो API का बाकी हिस्सा सीधा-सादा है।
आधार लोकेल
आपका baseLocale वह भाषा है जिसमें आप लिखते हैं।
यदि आपका उत्पाद विवरण ब्रिटिश अंग्रेज़ी में लिखा गया है, तो आपका आधार लोकेल en-GB है। यदि यह अमेरिकी अंग्रेज़ी में लिखा गया है,
तो आपका आधार लोकेल en-US है।
जब वर्तमान लोकेल बेस लोकेल से मेल खाती है, तो 18ways तुरंत स्रोत पाठ वापस करता है और अनुवाद का काम छोड़ देता है।
लक्ष्य लोकेल
आपका लक्षित लोकेल वही भाषा है जिसे उपयोगकर्ता अभी पढ़ रहा है।
React में, आप आमतौर पर इसे state में रखते हैं और इसे root Ways को pass करते हैं।
संदर्भ
Contexts इस तरह हैं कि 18ways संबंधित कॉपी को समूहित करता है।
इनका इस्तेमाल अनुवाद अनुरोधों को छोटा रखने और असंबंधित पाठ को एक साथ मिलाने से बचने के लिए करें।
import { Ways } from '@18ways/react';
export function AppRoot() {
return (
<Ways apiKey="pk_dummy_demo_token" locale="fr-FR" baseLocale="en-GB" context="marketing">
<Ways context="hero">
<Hero />
</Ways>
<Ways context="pricing">
<Pricing />
</Ways>
</Ways>
);
}नेस्टेड Ways स्कोप एक संदर्भ पथ में संयोजित होते हैं। marketing और hero मिलकर
marketing.hero बनते हैं।
स्वीकृत लोकेल
18ways निम्न के बीच अंतर करता है:
- ऐसा लोकेल जिसे यह पहचान सके, जैसे
fr-FR - एक लोकेल जिसे आपका प्रोजेक्ट वास्तव में स्वीकार करता है
रनटाइम API से स्वीकृत लोकेल सूची ला सकता है, फिर आने वाले लोकेल मानों को उस सूची के अनुसार सामान्यीकृत कर सकता है।
import { Ways } from '@18ways/react';
export function AppRoot() {
return (
<Ways
apiKey="pk_dummy_demo_token"
locale="fr-FR"
baseLocale="en-GB"
acceptedLocales={['en-GB', 'fr-FR', 'de-DE']}
context="app"
>
<App />
</Ways>
);
}दृढ़ता
रनटाइम द्वारा इस्तेमाल की जाने वाली लोकेल प्राथमिकता कुकी 18ways_locale है।
जब अनुवाद लोड होते हैं
@18ways/react एक सीड किए गए context के resolve होने के दौरान suspend कर सकता है और client पर एक साझा in-memory cache बनाए रखता है।
साझा मानसिक मॉडल
मॉडल को सरल रखें:
- अपने ऐप के लिए सही पैकेज चुनें।
- बेस लोकेल को सही तरीके से सेट करें।
- संदर्भ कुंजियों को स्थिर और सार्थक रखें।
- रनटाइम को पूरी वाक्यांशों का अनुवाद करने दें, न कि टुकड़ों का।
अगला: संदेश स्वरूपण