createNextMiddleware
Справочник API по методу createNextMiddleware().
Обзор
createNextMiddleware — это вспомогательная функция, которая создает middleware‑функцию для использования с Next.js.
Она позволяет добавить отдельный маршрут для каждой локали в вашем приложении на Next.js.
Например, francophone‑пользователь будет перенаправлен на /fr/landing, а англоязычный — на /en/landing.
Подробнее о том, как использовать этот middleware, см. руководство по маршрутизации i18n.
Справочные материалы
Пропсы
Prop
Type
Описание
| Prop | Описание |
|---|---|
pathConfig | Вложенный объект, задающий локализованные пути вашего приложения. |
localeRouting | Флаг для включения или отключения i18n‑маршрутизации. |
prefixDefaultLocale | Флаг, который включает или отключает удаление префикса локали для локали по умолчанию (например, /en/about → /about). |
Пример
Базовое использование
Просто добавьте этот вызов функции и сопоставитель путей в файл middleware, чтобы включить маршрутизацию по локалям.
import { createNextMiddleware } from 'gt-next/middleware'
export default createNextMiddleware();
export const config = {
matcher: [
/*
* Соответствует всем путям запросов, за исключением начинающихся с:
* - api (маршруты API)
* - _next (внутренние файлы)
* - статические файлы
*/
"/((?!api|static|.*\\..*|_next).*)",
],
}Локализованные пути
Вы можете задать локализованные пути с помощью параметра pathConfig в файле middleware.
export default createNextMiddleware({
pathConfig: {
"/about": "/about",
"/airplanes": {
"zh": "/飞机",
}
},
});См. руководство по i18n‑маршрутизации для подробного объяснения принципов работы.
Удалить префикс локали по умолчанию
Вы можете убрать префикс локали по умолчанию, установив параметр prefixDefaultLocale в значение false.
export default createNextMiddleware({
prefixDefaultLocale: true,
});Когда значение равно true, каждый путь должен начинаться с префикса локали.
Если установить false (значение по умолчанию), из пути будет удаляться только локаль по умолчанию.
Примечания
- Функция
createNextMiddleware— это вспомогательная функция, которая создаёт middleware для использования в Next.js.
Что дальше
Насколько полезно это руководство?