Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Init history"v9.0.013.06.2026
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
Міграція з Lingui на Intlayer
Якщо ваш проект наразі використовує компіляцію на основі макросів Lingui, перехід на Intlayer дозволяє вам зберегти потужні робочі процеси макросів, одночасно підтримуючи їх нативно за допомогою стратегії JSON-компіляції Intlayer.
Що робити
Для початку ініціалізуйте Intlayer у своєму проекті:
Скопіюйте код у буфер обміну
Це створює ваш intlayer.config.ts. Переконайтеся, що ви зберегли @lingui/babel-plugin-lingui-macro / @lingui/swc-plugin у вашому кроці збірки для запуску перед компілятором Intlayer. Потім використовуйте alias плагіна bundler для маршрутизації @lingui/core та @lingui/react до @intlayer/lingui.
Як це працює під капотом
Lingui використовує макроси (такі як t`Hello ${name}` та <Trans>), які компілюються в runtime-виклики типу i18n._(id, values).
Під капотом:
- Макроси: Вони компілюються точно так же, як раніше, забезпечуючи відсутність порушень у вашому синтаксисі вихідного коду.
- Runtime-переклад: Псевдонім
i18n._()використовує словники Intlayer. Як явно названі ID, так і захешовані ID повністю відображаються за допомогою плагінів синхронізації.poIntlayer для безпечної агрегації та видалення ключів. - Можливості ICU: Підтримка плюралізації, вибору та варіантів ICU залишається стійкою завдяки уніфікованому ICU-парсеру Intlayer, забезпечуючи однакові результати рендерингу.
