Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Ініціалізація історії"v5.5.1029.06.2025
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
Документація: функція t у hono-intlayer
Функція t у пакеті hono-intlayer є основним інструментом для надання локалізованих відповідей у вашому додатку Hono. Вона спрощує інтернаціоналізацію (i18n), динамічно вибираючи вміст на основі бажаної мови користувача.
Огляд
Функція t використовується для визначення та отримання перекладів для заданого набору мов. Вона автоматично визначає відповідну мову для повернення на основі налаштувань запиту клієнта, таких як заголовок Accept-Language. Якщо бажана мова недоступна, вона плавно повертається до мови за замовчуванням, указаної у вашій конфігурації.
Ключові особливості
- Динамічна локалізація: автоматично вибирає найбільш підходящий переклад для клієнта.
- Повернення до мови за замовчуванням: повертається до локалі за замовчуванням, якщо бажана мова клієнта недоступна, забезпечуючи безперервність користувацького досвіду.
- Легкість і швидкість: розроблено для високопродуктивних додатків, що забезпечує мінімальні накладні витрати.
- Підтримка суворого режиму: забезпечує суворе дотримання оголошених локалей для надійної поведінки.
Сигнатура функції
Параметри
translations: об'єкт, де ключі, це коди локалей (наприклад,en,fr,uk), а значення, відповідні перекладені рядки.
Повертає
- Рядок, що представляє вміст бажаною мовою клієнта.
Завантаження обробника запитів інтернаціоналізації
Щоб забезпечити коректну роботу функцій інтернаціоналізації, що надаються hono-intlayer, ви повинні завантажити проміжне програмне забезпечення (middleware) інтернаціоналізації на початку вашого додатка Hono. Це активує функцію t і забезпечує належну обробку виявлення локалі та перекладу.
Розмістіть проміжне ПЗ app.use("*", intlayer()) перед будь-якими маршрутами у вашому додатку, щоб усі маршрути могли скористатися перевагами інтернаціоналізації:
Чому це потрібно
- Виявлення локалі: проміжне ПЗ
intlayerобробляє вхідні запити для виявлення бажаної локалі користувача на основі заголовків, файлів cookie або інших налаштованих методів. - Контекст перекладу: налаштовує необхідний контекст для правильної роботи функції
t, гарантуючи, що переклади повертаються правильною мовою. - Запобігання помилкам: без цього проміжного ПЗ використання функції
tпризведе до помилок під час виконання, оскільки необхідна інформація про локаль буде недоступна.
Приклади використання
Базовий приклад
Надавайте локалізований вміст різними мовами:
Запити клієнтів:
- Клієнт із
Accept-Language: frотримаєBienvenue!. - Клієнт із
Accept-Language: ukотримаєЛаскаво просимо!. - Клієнт із
Accept-Language: deотримаєWelcome!(локаль за замовчуванням).
Обробка помилок
Надавайте повідомлення про помилки кількома мовами:
Використання варіантів локалі
Укажіть переклади для конкретних варіантів локалей:
Розширені теми
Механізм повернення (Fallback)
Якщо бажана локаль недоступна, функція t повернеться до локалі за замовчуванням, визначеної в конфігурації:
Примусове використання суворого режиму
Налаштуйте функцію t для забезпечення суворого дотримання оголошених локалей:
Відкрийте таблицю в модальному вікні, щоб чітко переглянути всі дані
| Режим | Поведінка |
|---|---|
strict | Для всіх оголошених локалей мають бути надані переклади. Відсутність локалей призведе до помилок. |
inclusive | Оголошені локалі повинні мати переклади. Відсутність локалей викликає попередження, але вони приймаються. |
loose | Приймається будь-яка існуюча локаль, навіть якщо вона не оголошена. |
Інтеграція з TypeScript
Функція t є типобезпечною при використанні з TypeScript. Визначте типобезпечний об'єкт перекладів:
Поширені помилки та усунення несправностей
Відкрийте таблицю в модальному вікні, щоб чітко переглянути всі дані
| Проблема | Причина | Рішення |
|---|---|---|
Функція t не працює | Проміжне ПЗ не завантажено | Переконайтеся, що app.use("*", intlayer()) додано перед маршрутами. |
| Помилка відсутності перекладів | Увімкнено суворий режим без усіх мов | Надайте всі необхідні переклади. |
Висновок
Функція t, це потужний інструмент для інтернаціоналізації бекенда. Ефективно використовуючи її, ви можете створити більш інклюзивний та зручний додаток для глобальної аудиторії. Для отримання інформації про розширене використання та детальні параметри конфігурації зверніться до документації.