अपने प्रश्न को पूछें और दस्तावेज़ का सारांश प्राप्त करें, इस पृष्ठ और आपके चुने हुए AI प्रदाता का उपयोग करके
यह दस्तावेज़ पुराना है, आधार संस्करण को इस तिथि पर अपडेट किया गया है 25 जून 2026.
अंग्रेजी दस्तावेज़ पर जाएँसंस्करण इतिहास
- "प्रारम्भिक डॉक्यूमेंटेशन"v8.0.021/1/2026
इस पृष्ठ की सामग्री एक AI द्वारा अनुवादित की गई है।
अंग्रेजी में मूल सामग्री के अंतिम संस्करण देखेंIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
intlayer Vite प्लगइन दस्तावेज़ीकरण
intlayer Vite प्लगइन Intlayer कॉन्फ़िगरेशन को बिल्ड प्रक्रिया में एकीकृत करता है। यह डिक्शनरी एलियस को हैंडल करता है, डेवलपमेंट मोड में डिक्शनरी वॉचर शुरू करता है, और बिल्ड के लिए डिक्शनरी तैयार करता है।
उपयोग
कोड को क्लिपबोर्ड पर कॉपी करें
// vite.config.tsimport { defineConfig } from "vite";import { intlayer } from "vite-intlayer";export default defineConfig({ plugins: [intlayer()],});विकल्प
कोड को क्लिपबोर्ड पर कॉपी करें
import type { IntlayerPluginOptions } from "vite-intlayer";IntlayerPluginOptions GetConfigurationOptions को विस्तृत करता है (देखें @intlayer/config) निम्नलिखित अतिरिक्त फ़ील्ड के साथ:
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| विकल्प | प्रकार | डिफ़ॉल्ट | विवरण |
|---|---|---|---|
compatCallers | CompatCallerConfig[] | [] | compat-adapter packages के लिए अतिरिक्त caller पैटर्न (उदाहरण के लिए @intlayer/react-i18next)। बिल्ड समय पर field-usage विश्लेषक को पास किया गया। |
proxy | { ignore?: (req) => boolean } | undefined | bundled locale-routing proxy को आगे बढ़ाए गए विकल्प। विशिष्ट पाथ (उदाहरण के लिए API routes) को locale routing से बाहर करने के लिए ignore का उपयोग करें। |
अन्य सभी विकल्प (override, configFile, …) सीधे getConfiguration() को आगे बढ़ाए जाते हैं।
उदाहरण
locale routing से API routes को ignore करें
कोड को क्लिपबोर्ड पर कॉपी करें
// vite.config.tsimport { defineConfig } from "vite";import { intlayer } from "vite-intlayer";export default defineConfig({ plugins: [ intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api"), }, }), ],});कस्टम config फ़ाइल पथ के साथ
कोड को क्लिपबोर्ड पर कॉपी करें
export default defineConfig({ plugins: [ intlayer({ configFile: "./config/intlayer.config.ts", }), ],});compat-adapter callers के साथ
कोड को क्लिपबोर्ड पर कॉपी करें
import { intlayer } from "vite-intlayer";import { reactI18nextCallerConfig } from "@intlayer/react-i18next/plugin";export default defineConfig({ plugins: [ intlayer({ compatCallers: [reactI18nextCallerConfig], }), ],});प्लगइन क्या करता है
1. Dictionary preparation
बिल्ड शुरू होने से पहले (और dev में एक घंटे में एक बार), intlayer सभी .content.ts फ़ाइलों को .intlayer/ में संग्रहीत अनुकूलित JSON शब्दकोशों में संकलित करने के लिए prepareIntlayer को कॉल करता है।
2. Module aliases
प्लगइन Vite resolve aliases जोड़ता है ताकि import { myDict } from 'intlayer/dictionaries/my-dict' डिस्क पर compiled JSON फ़ाइल को resolve करे। SSR builds ssr.noExternal का उपयोग करते हैं ताकि सभी @intlayer/* packages को aliases के साथ bundled किया जाए।
3. Dev-server watcher
विकास मोड में एक chokidar watcher शुरू किया जाता है। जब कोई .content.ts फ़ाइल बदलती है तो dictionaries को फिर से compile किया जाता है और Vite का HMR browser को अपडेट प्रसारित करता है।
4. Bundled locale-routing proxy (v9+)
Intlayer v9 के बाद से intlayerProxy middleware को intlayer() के अंदर स्वचालित रूप से पंजीकृत किया जाता है। यह निम्नलिखित को संभालता है:
- URL prefix, cookies, और
Accept-Languageheader से locale detection। - 301 redirects जब detected locale वर्तमान URL से मेल नहीं खाता।
- Internal URL rewrites ताकि framework को सही
[locale]route parameter दिखे।
Proxy को आपके Intlayer config में routing.enableProxy (डिफ़ॉल्ट true) द्वारा नियंत्रित किया जाता है। इसे पूरी तरह से अक्षम करने के लिए:
कोड को क्लिपबोर्ड पर कॉपी करें
// intlayer.config.tsimport { defineConfig } from "intlayer";export default defineConfig({ routing: { enableProxy: false },});एक अलग intlayerProxy() कॉल के बिना proxy के व्यवहार को कस्टमाइज़ करने के लिए, मुख्य plugin को proxy विकल्प pass करें:
कोड को क्लिपबोर्ड पर कॉपी करें
intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api") } });पूर्ण routing व्यवहार reference के लिए intlayerProxy documentation देखें।
5. Bundled compiler (v9+)
जब compiler.enabled true और compiler.output आपकी Intlayer कॉन्फ़िग में सेट हो, तो intlayer() स्वचालित रूप से intlayerCompiler को रजिस्टर करता है। कंपाइलर component फ़ाइलों के अंदर सीधे लिखी गई inline content declarations को निकालता है और transform time पर उन्हें dictionaries में लिखता है। intlayerCompiler documentation देखें।
6. बिल्ड ऑप्टिमाइज़ेशन
एक प्रोडक्शन बिल्ड के दौरान प्लगइन निम्नलिखित जोड़ता है:
- intlayerOptimize – Babel transform जो
useIntlayer('key')→useDictionary(hash)को फिर से लिखता है और सीधे JSON आयात को इंजेक्ट करता है। - intlayerPrune – डिक्शनरी JSON से अप्रयुक्त कंटेंट फील्ड को हटाता है।
- intlayerMinify – डिक्शनरी JSON को कॉम्पैक्ट करता है और वैकल्पिक रूप से फील्ड नामों को बदलता है।
ये डेवलपमेंट मोड में निष्क्रिय हैं।
Deprecated aliases
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| Deprecated export | Replacement |
|---|---|
intlayerPlugin | intlayer |
intLayerPlugin | intlayer |