[{"data":1,"prerenderedAt":4605},["ShallowReactive",2],{"$fGCo9l1hMtNdUiA6QzdUX5X3kLqaWcC5t2kdz4LrvCvc":3,"versions":2937,"-docs-3-x-directory-structure-middleware":2942,"-docs-3-x-directory-structure-middleware-surround":4600},[4,1128,2029,2848],{"title":5,"titleTemplate":6,"icon":7,"path":8,"stem":9,"children":10,"page":108},"Документация",null,"i-lucide-book-marked","/docs/3.x","docs/3.x",[11,109,234,425,910,1005,1042,1085],{"title":12,"titleTemplate":13,"icon":14,"path":15,"stem":16,"children":17,"page":108},"Начало работы","%s · Начало работы с Nuxt","i-lucide-rocket","/docs/3.x/getting-started","docs/3.x/1.getting-started",[18,23,28,33,38,43,48,53,58,63,68,73,78,83,88,93,98,103],{"title":19,"path":20,"stem":21,"titleTemplate":6,"icon":22},"Введение","/docs/3.x/getting-started/introduction","docs/3.x/1.getting-started/01.introduction","i-lucide-info",{"title":24,"path":25,"stem":26,"titleTemplate":6,"icon":27},"Установка","/docs/3.x/getting-started/installation","docs/3.x/1.getting-started/02.installation","i-lucide-play",{"title":29,"path":30,"stem":31,"titleTemplate":6,"icon":32},"Настройка","/docs/3.x/getting-started/configuration","docs/3.x/1.getting-started/03.configuration","i-lucide-cog",{"title":34,"path":35,"stem":36,"titleTemplate":6,"icon":37},"Представления","/docs/3.x/getting-started/views","docs/3.x/1.getting-started/04.views","i-lucide-panels-top-left",{"title":39,"path":40,"stem":41,"titleTemplate":6,"icon":42},"Ассеты","/docs/3.x/getting-started/assets","docs/3.x/1.getting-started/05.assets","i-lucide-image",{"title":44,"path":45,"stem":46,"titleTemplate":6,"icon":47},"Стилизация","/docs/3.x/getting-started/styling","docs/3.x/1.getting-started/06.styling","i-lucide-palette",{"title":49,"path":50,"stem":51,"titleTemplate":6,"icon":52},"Маршрутизация","/docs/3.x/getting-started/routing","docs/3.x/1.getting-started/07.routing","i-lucide-milestone",{"title":54,"path":55,"stem":56,"titleTemplate":6,"icon":57},"SEO и Meta","/docs/3.x/getting-started/seo-meta","docs/3.x/1.getting-started/08.seo-meta","i-lucide-file-search",{"title":59,"path":60,"stem":61,"titleTemplate":6,"icon":62},"Переходы","/docs/3.x/getting-started/transitions","docs/3.x/1.getting-started/09.transitions","i-lucide-toggle-right",{"title":64,"path":65,"stem":66,"titleTemplate":6,"icon":67},"Получение данных","/docs/3.x/getting-started/data-fetching","docs/3.x/1.getting-started/10.data-fetching","i-lucide-cable",{"title":69,"path":70,"stem":71,"titleTemplate":6,"icon":72},"Управление состоянием","/docs/3.x/getting-started/state-management","docs/3.x/1.getting-started/11.state-management","i-lucide-database",{"title":74,"path":75,"stem":76,"titleTemplate":6,"icon":77},"Обработка ошибок","/docs/3.x/getting-started/error-handling","docs/3.x/1.getting-started/12.error-handling","i-lucide-bug-off",{"title":79,"path":80,"stem":81,"titleTemplate":6,"icon":82},"Сервер","/docs/3.x/getting-started/server","docs/3.x/1.getting-started/13.server","i-lucide-pc-case",{"title":84,"path":85,"stem":86,"titleTemplate":6,"icon":87},"Слои","/docs/3.x/getting-started/layers","docs/3.x/1.getting-started/14.layers","i-lucide-layers",{"title":89,"path":90,"stem":91,"titleTemplate":6,"icon":92},"Пререндеринг","/docs/3.x/getting-started/prerendering","docs/3.x/1.getting-started/15.prerendering","i-lucide-file-code-2",{"title":94,"path":95,"stem":96,"titleTemplate":6,"icon":97},"Развёртывание","/docs/3.x/getting-started/deployment","docs/3.x/1.getting-started/16.deployment","i-lucide-cloud",{"title":99,"path":100,"stem":101,"titleTemplate":6,"icon":102},"Тестирование","/docs/3.x/getting-started/testing","docs/3.x/1.getting-started/17.testing","i-lucide-circle-check",{"title":104,"path":105,"stem":106,"titleTemplate":6,"icon":107},"Руководство по обновлению","/docs/3.x/getting-started/upgrade","docs/3.x/1.getting-started/18.upgrade","i-lucide-circle-arrow-up",false,{"title":110,"titleTemplate":111,"icon":112,"path":113,"stem":114,"children":115,"page":108},"Структура каталогов","%s · Структура каталогов Nuxt","i-vscode-icons-default-folder","/docs/3.x/directory-structure","docs/3.x/2.directory-structure",[116,121,125,129,134,138,142,147,152,157,161,165,169,174,178,183,187,191,196,200,205,209,213,217,221,225,229],{"title":117,"path":118,"stem":119,"titleTemplate":6,"icon":120},".nuxt","/docs/3.x/directory-structure/nuxt","docs/3.x/2.directory-structure/0.nuxt","i-lucide-folder",{"title":122,"path":123,"stem":124,"titleTemplate":6,"icon":120},".output","/docs/3.x/directory-structure/output","docs/3.x/2.directory-structure/0.output",{"title":126,"path":127,"stem":128,"titleTemplate":6,"icon":120},"assets","/docs/3.x/directory-structure/assets","docs/3.x/2.directory-structure/1.assets",{"title":130,"path":131,"stem":132,"titleTemplate":6,"icon":133},"components","/docs/3.x/directory-structure/components","docs/3.x/2.directory-structure/1.components","i-vscode-icons-folder-type-component",{"title":135,"path":136,"stem":137,"titleTemplate":6,"icon":120},"composables","/docs/3.x/directory-structure/composables","docs/3.x/2.directory-structure/1.composables",{"title":139,"path":140,"stem":141,"titleTemplate":6,"icon":120},"content","/docs/3.x/directory-structure/content","docs/3.x/2.directory-structure/1.content",{"title":143,"path":144,"stem":145,"titleTemplate":6,"icon":146},"layers","/docs/3.x/directory-structure/layers","docs/3.x/2.directory-structure/1.layers","i-vscode-icons-folder-type-nuxt",{"title":148,"path":149,"stem":150,"titleTemplate":6,"icon":151},"layouts","/docs/3.x/directory-structure/layouts","docs/3.x/2.directory-structure/1.layouts","i-vscode-icons-folder-type-view",{"title":153,"path":154,"stem":155,"titleTemplate":6,"icon":156},"middleware","/docs/3.x/directory-structure/middleware","docs/3.x/2.directory-structure/1.middleware","i-vscode-icons-folder-type-middleware",{"title":158,"path":159,"stem":160,"titleTemplate":6,"icon":146},"modules","/docs/3.x/directory-structure/modules","docs/3.x/2.directory-structure/1.modules",{"title":162,"path":163,"stem":164,"titleTemplate":6,"icon":120},"node_modules","/docs/3.x/directory-structure/node_modules","docs/3.x/2.directory-structure/1.node_modules",{"title":166,"path":167,"stem":168,"titleTemplate":6,"icon":151},"pages","/docs/3.x/directory-structure/pages","docs/3.x/2.directory-structure/1.pages",{"title":170,"path":171,"stem":172,"titleTemplate":6,"icon":173},"plugins","/docs/3.x/directory-structure/plugins","docs/3.x/2.directory-structure/1.plugins","i-vscode-icons-folder-type-plugin",{"title":175,"path":176,"stem":177,"titleTemplate":6,"icon":120},"public","/docs/3.x/directory-structure/public","docs/3.x/2.directory-structure/1.public",{"title":179,"path":180,"stem":181,"titleTemplate":6,"icon":182},"server","/docs/3.x/directory-structure/server","docs/3.x/2.directory-structure/1.server","i-vscode-icons-folder-type-server",{"title":184,"path":185,"stem":186,"titleTemplate":6,"icon":120},"shared","/docs/3.x/directory-structure/shared","docs/3.x/2.directory-structure/1.shared",{"title":188,"path":189,"stem":190,"titleTemplate":6,"icon":120},"utils","/docs/3.x/directory-structure/utils","docs/3.x/2.directory-structure/1.utils",{"title":192,"path":193,"stem":194,"titleTemplate":6,"icon":195},".env","/docs/3.x/directory-structure/env","docs/3.x/2.directory-structure/2.env","i-lucide-file",{"title":197,"path":198,"stem":199,"titleTemplate":6,"icon":195},".gitignore","/docs/3.x/directory-structure/gitignore","docs/3.x/2.directory-structure/2.gitignore",{"title":201,"path":202,"stem":203,"titleTemplate":6,"icon":204},".nuxtignore","/docs/3.x/directory-structure/nuxtignore","docs/3.x/2.directory-structure/2.nuxtignore","i-vscode-icons-file-type-nuxt",{"title":206,"path":207,"stem":208,"titleTemplate":6,"icon":204},".nuxtrc","/docs/3.x/directory-structure/nuxtrc","docs/3.x/2.directory-structure/2.nuxtrc",{"title":210,"path":211,"stem":212,"titleTemplate":6,"icon":195},"app.vue","/docs/3.x/directory-structure/app","docs/3.x/2.directory-structure/3.app",{"title":214,"path":215,"stem":216,"titleTemplate":6,"icon":195},"app.config.ts","/docs/3.x/directory-structure/app-config","docs/3.x/2.directory-structure/3.app-config",{"title":218,"path":219,"stem":220,"titleTemplate":6,"icon":195},"error.vue","/docs/3.x/directory-structure/error","docs/3.x/2.directory-structure/3.error",{"title":222,"path":223,"stem":224,"titleTemplate":6,"icon":195},"nuxt.config.ts","/docs/3.x/directory-structure/nuxt-config","docs/3.x/2.directory-structure/3.nuxt-config",{"title":226,"path":227,"stem":228,"titleTemplate":6,"icon":195},"package.json","/docs/3.x/directory-structure/package","docs/3.x/2.directory-structure/3.package",{"title":230,"path":231,"stem":232,"titleTemplate":6,"icon":233},"tsconfig.json","/docs/3.x/directory-structure/tsconfig","docs/3.x/2.directory-structure/3.tsconfig","i-vscode-icons-file-type-tsconfig",{"title":235,"titleTemplate":6,"icon":236,"path":237,"stem":238,"children":239,"page":108},"Руководство","i-lucide-book-open","/docs/3.x/guide","docs/3.x/3.guide",[240,283,302,317,351,374],{"title":241,"titleTemplate":242,"icon":243,"path":244,"stem":245,"children":246,"page":108},"Ключевые концепции","%s · Концепции Nuxt","i-lucide-medal","/docs/3.x/guide/concepts","docs/3.x/3.guide/1.concepts",[247,251,255,259,263,267,271,275,279],{"title":248,"path":249,"stem":250,"titleTemplate":6},"Режимы рендеринга","/docs/3.x/guide/concepts/rendering","docs/3.x/3.guide/1.concepts/1.rendering",{"title":252,"path":253,"stem":254,"titleTemplate":6},"Разработка при помощи Vue.js","/docs/3.x/guide/concepts/vuejs-development","docs/3.x/3.guide/1.concepts/10.vuejs-development",{"title":256,"path":257,"stem":258,"titleTemplate":6},"Жизненный цикл Nuxt","/docs/3.x/guide/concepts/nuxt-lifecycle","docs/3.x/3.guide/1.concepts/2.nuxt-lifecycle",{"title":260,"path":261,"stem":262,"titleTemplate":6},"Автоматические импорты","/docs/3.x/guide/concepts/auto-imports","docs/3.x/3.guide/1.concepts/3.auto-imports",{"title":264,"path":265,"stem":266,"titleTemplate":6},"Серверный движок","/docs/3.x/guide/concepts/server-engine","docs/3.x/3.guide/1.concepts/4.server-engine",{"title":268,"path":269,"stem":270,"titleTemplate":6},"Модули","/docs/3.x/guide/concepts/modules","docs/3.x/3.guide/1.concepts/5.modules",{"title":272,"path":273,"stem":274,"titleTemplate":6},"Модули ES","/docs/3.x/guide/concepts/esm","docs/3.x/3.guide/1.concepts/7.esm",{"title":276,"path":277,"stem":278,"titleTemplate":6},"TypeScript","/docs/3.x/guide/concepts/typescript","docs/3.x/3.guide/1.concepts/8.typescript",{"title":280,"path":281,"stem":282,"titleTemplate":6},"Стиль кода","/docs/3.x/guide/concepts/code-style","docs/3.x/3.guide/1.concepts/9.code-style",{"title":284,"titleTemplate":285,"icon":286,"path":287,"stem":288,"children":289,"page":108},"Лучшие практики","%s · Лучшие практики","i-lucide-square-check","/docs/3.x/guide/best-practices","docs/3.x/3.guide/2.best-practices",[290,294,298],{"title":291,"path":292,"stem":293,"titleTemplate":6},"Nuxt и гидратация","/docs/3.x/guide/best-practices/hydration","docs/3.x/3.guide/2.best-practices/hydration",{"title":295,"path":296,"stem":297,"titleTemplate":6},"Производительность Nuxt","/docs/3.x/guide/best-practices/performance","docs/3.x/3.guide/2.best-practices/performance",{"title":299,"path":300,"stem":301,"titleTemplate":6},"Плагины Nuxt","/docs/3.x/guide/best-practices/plugins","docs/3.x/3.guide/2.best-practices/plugins",{"title":303,"titleTemplate":304,"icon":305,"path":306,"stem":307,"children":308,"page":108},"Работа с ИИ","Работа с ИИ: %s","i-lucide-bot","/docs/3.x/guide/ai","docs/3.x/3.guide/3.ai",[309,313],{"title":310,"path":311,"stem":312,"titleTemplate":6},"Сервер MCP","/docs/3.x/guide/ai/mcp","docs/3.x/3.guide/3.ai/1.mcp",{"title":314,"path":315,"stem":316,"titleTemplate":6},"LLMs.txt","/docs/3.x/guide/ai/llms-txt","docs/3.x/3.guide/3.ai/2.llms-txt",{"title":318,"titleTemplate":319,"icon":320,"path":321,"stem":322,"children":323,"page":108},"Руководство автора модулей","%s · Модули Nuxt","i-lucide-box","/docs/3.x/guide/modules","docs/3.x/3.guide/4.modules",[324,328,332,336,340,344,347],{"title":325,"path":326,"stem":327,"titleTemplate":6},"Первый модуль","/docs/3.x/guide/modules/getting-started","docs/3.x/3.guide/4.modules/1.getting-started",{"title":329,"path":330,"stem":331,"titleTemplate":6},"Структура модуля","/docs/3.x/guide/modules/module-anatomy","docs/3.x/3.guide/4.modules/2.module-anatomy",{"title":333,"path":334,"stem":335,"titleTemplate":6},"Добавление плагинов, компонентов и прочего","/docs/3.x/guide/modules/recipes-basics","docs/3.x/3.guide/4.modules/3.recipes-basics",{"title":337,"path":338,"stem":339,"titleTemplate":6},"Хуки и типы","/docs/3.x/guide/modules/recipes-advanced","docs/3.x/3.guide/4.modules/4.recipes-advanced",{"title":341,"path":342,"stem":343,"titleTemplate":6},"Тестирование модуля","/docs/3.x/guide/modules/testing","docs/3.x/3.guide/4.modules/5.testing",{"title":284,"path":345,"stem":346,"titleTemplate":6},"/docs/3.x/guide/modules/best-practices","docs/3.x/3.guide/4.modules/6.best-practices",{"title":348,"path":349,"stem":350,"titleTemplate":6},"Публикация и экосистема","/docs/3.x/guide/modules/ecosystem","docs/3.x/3.guide/4.modules/7.ecosystem",{"title":352,"titleTemplate":353,"icon":354,"path":355,"stem":356,"children":357,"page":108},"Рецепты","%s · Рецепты","i-lucide-cooking-pot","/docs/3.x/guide/recipes","docs/3.x/3.guide/5.recipes",[358,362,366,370],{"title":359,"path":360,"stem":361,"titleTemplate":6},"Пользовательский роутинг","/docs/3.x/guide/recipes/custom-routing","docs/3.x/3.guide/5.recipes/1.custom-routing",{"title":363,"path":364,"stem":365,"titleTemplate":6},"Плагины Vite","/docs/3.x/guide/recipes/vite-plugin","docs/3.x/3.guide/5.recipes/2.vite-plugin",{"title":367,"path":368,"stem":369,"titleTemplate":6},"Пользовательский useFetch","/docs/3.x/guide/recipes/custom-usefetch","docs/3.x/3.guide/5.recipes/3.custom-usefetch",{"title":371,"path":372,"stem":373,"titleTemplate":6},"Сессии и аутентификация","/docs/3.x/guide/recipes/sessions-and-authentication","docs/3.x/3.guide/5.recipes/4.sessions-and-authentication",{"title":375,"titleTemplate":376,"icon":377,"path":378,"stem":379,"children":380,"page":108},"Дальнейшее изучение","%s · Продвинутые темы Nuxt","i-lucide-star","/docs/3.x/guide/going-further","docs/3.x/3.guide/6.going-further",[381,385,389,393,397,401,405,409,413,417,421],{"title":382,"path":383,"stem":384,"titleTemplate":6},"События","/docs/3.x/guide/going-further/events","docs/3.x/3.guide/6.going-further/1.events",{"title":386,"path":387,"stem":388,"titleTemplate":6},"Экспериментальные возможности","/docs/3.x/guide/going-further/experimental-features","docs/3.x/3.guide/6.going-further/1.experimental-features",{"title":390,"path":391,"stem":392,"titleTemplate":6},"Возможности","/docs/3.x/guide/going-further/features","docs/3.x/3.guide/6.going-further/1.features",{"title":394,"path":395,"stem":396,"titleTemplate":6},"Как работает Nuxt?","/docs/3.x/guide/going-further/internals","docs/3.x/3.guide/6.going-further/1.internals",{"title":398,"path":399,"stem":400,"titleTemplate":6},"Конфигурация времени выполнения","/docs/3.x/guide/going-further/runtime-config","docs/3.x/3.guide/6.going-further/10.runtime-config",{"title":402,"path":403,"stem":404,"titleTemplate":6},"Канал ночных релизов","/docs/3.x/guide/going-further/nightly-release-channel","docs/3.x/3.guide/6.going-further/11.nightly-release-channel",{"title":406,"path":407,"stem":408,"titleTemplate":6},"Хуки жизненного цикла","/docs/3.x/guide/going-further/hooks","docs/3.x/3.guide/6.going-further/2.hooks",{"title":410,"path":411,"stem":412,"titleTemplate":6},"Nuxt Kit","/docs/3.x/guide/going-further/kit","docs/3.x/3.guide/6.going-further/4.kit",{"title":414,"path":415,"stem":416,"titleTemplate":6},"NuxtApp","/docs/3.x/guide/going-further/nuxt-app","docs/3.x/3.guide/6.going-further/6.nuxt-app",{"title":418,"path":419,"stem":420,"titleTemplate":6},"Создание авторских слоёв Nuxt","/docs/3.x/guide/going-further/layers","docs/3.x/3.guide/6.going-further/7.layers",{"title":422,"path":423,"stem":424,"titleTemplate":6},"Отладка","/docs/3.x/guide/going-further/debugging","docs/3.x/3.guide/6.going-further/9.debugging",{"title":426,"titleTemplate":427,"icon":428,"path":429,"stem":430,"children":431,"page":108},"Справочник API","%s · Справочник API Nuxt","i-lucide-code-xml","/docs/3.x/api","docs/3.x/4.api",[432,499,622,745,816,892,905],{"title":433,"titleTemplate":434,"icon":320,"path":435,"stem":436,"children":437,"page":108},"Компоненты","%s · Компоненты Nuxt","/docs/3.x/api/components","docs/3.x/4.api/1.components",[438,442,446,450,454,458,463,467,471,475,479,483,487,491,495],{"title":439,"path":440,"stem":441,"titleTemplate":6},"\u003CClientOnly>","/docs/3.x/api/components/client-only","docs/3.x/4.api/1.components/1.client-only",{"title":443,"path":444,"stem":445,"titleTemplate":6},"\u003CDevOnly>","/docs/3.x/api/components/dev-only","docs/3.x/4.api/1.components/1.dev-only",{"title":447,"path":448,"stem":449,"titleTemplate":6},"\u003CNuxtClientFallback>","/docs/3.x/api/components/nuxt-client-fallback","docs/3.x/4.api/1.components/1.nuxt-client-fallback",{"title":451,"path":452,"stem":453,"titleTemplate":6},"\u003CNuxtPicture>","/docs/3.x/api/components/nuxt-picture","docs/3.x/4.api/1.components/10.nuxt-picture",{"title":455,"path":456,"stem":457,"titleTemplate":6},"\u003CTeleport>","/docs/3.x/api/components/teleports","docs/3.x/4.api/1.components/11.teleports",{"title":459,"path":460,"stem":461,"titleTemplate":6,"badge":462},"\u003CNuxtRouteAnnouncer>","/docs/3.x/api/components/nuxt-route-announcer","docs/3.x/4.api/1.components/12.nuxt-route-announcer","Новое",{"title":464,"path":465,"stem":466,"titleTemplate":6},"\u003CNuxtTime>","/docs/3.x/api/components/nuxt-time","docs/3.x/4.api/1.components/13.nuxt-time",{"title":468,"path":469,"stem":470,"titleTemplate":6},"\u003CNuxtPage>","/docs/3.x/api/components/nuxt-page","docs/3.x/4.api/1.components/2.nuxt-page",{"title":472,"path":473,"stem":474,"titleTemplate":6},"\u003CNuxtLayout>","/docs/3.x/api/components/nuxt-layout","docs/3.x/4.api/1.components/3.nuxt-layout",{"title":476,"path":477,"stem":478,"titleTemplate":6},"\u003CNuxtLink>","/docs/3.x/api/components/nuxt-link","docs/3.x/4.api/1.components/4.nuxt-link",{"title":480,"path":481,"stem":482,"titleTemplate":6},"\u003CNuxtLoadingIndicator>","/docs/3.x/api/components/nuxt-loading-indicator","docs/3.x/4.api/1.components/5.nuxt-loading-indicator",{"title":484,"path":485,"stem":486,"titleTemplate":6},"\u003CNuxtErrorBoundary>","/docs/3.x/api/components/nuxt-error-boundary","docs/3.x/4.api/1.components/6.nuxt-error-boundary",{"title":488,"path":489,"stem":490,"titleTemplate":6},"\u003CNuxtWelcome>","/docs/3.x/api/components/nuxt-welcome","docs/3.x/4.api/1.components/7.nuxt-welcome",{"title":492,"path":493,"stem":494,"titleTemplate":6},"\u003CNuxtIsland>","/docs/3.x/api/components/nuxt-island","docs/3.x/4.api/1.components/8.nuxt-island",{"title":496,"path":497,"stem":498,"titleTemplate":6},"\u003CNuxtImg>","/docs/3.x/api/components/nuxt-img","docs/3.x/4.api/1.components/9.nuxt-img",{"title":500,"titleTemplate":501,"icon":502,"path":503,"stem":504,"children":505,"page":108},"Композаблы","%s · Композаблы Nuxt","i-lucide-arrow-left-right","/docs/3.x/api/composables","docs/3.x/4.api/2.composables",[506,510,514,518,522,526,530,534,538,542,546,550,554,558,562,566,570,574,578,582,586,590,594,598,602,606,610,614,618],{"title":507,"path":508,"stem":509,"titleTemplate":6},"onPrehydrate","/docs/3.x/api/composables/on-prehydrate","docs/3.x/4.api/2.composables/on-prehydrate",{"title":511,"path":512,"stem":513,"titleTemplate":6},"useAppConfig","/docs/3.x/api/composables/use-app-config","docs/3.x/4.api/2.composables/use-app-config",{"title":515,"path":516,"stem":517,"titleTemplate":6},"useAsyncData","/docs/3.x/api/composables/use-async-data","docs/3.x/4.api/2.composables/use-async-data",{"title":519,"path":520,"stem":521,"titleTemplate":6},"useCookie","/docs/3.x/api/composables/use-cookie","docs/3.x/4.api/2.composables/use-cookie",{"title":523,"path":524,"stem":525,"titleTemplate":6},"useError","/docs/3.x/api/composables/use-error","docs/3.x/4.api/2.composables/use-error",{"title":527,"path":528,"stem":529,"titleTemplate":6},"useFetch","/docs/3.x/api/composables/use-fetch","docs/3.x/4.api/2.composables/use-fetch",{"title":531,"path":532,"stem":533,"titleTemplate":6},"useHead","/docs/3.x/api/composables/use-head","docs/3.x/4.api/2.composables/use-head",{"title":535,"path":536,"stem":537,"titleTemplate":6},"useHeadSafe","/docs/3.x/api/composables/use-head-safe","docs/3.x/4.api/2.composables/use-head-safe",{"title":539,"path":540,"stem":541,"titleTemplate":6},"useHydration","/docs/3.x/api/composables/use-hydration","docs/3.x/4.api/2.composables/use-hydration",{"title":543,"path":544,"stem":545,"titleTemplate":6},"useLazyAsyncData","/docs/3.x/api/composables/use-lazy-async-data","docs/3.x/4.api/2.composables/use-lazy-async-data",{"title":547,"path":548,"stem":549,"titleTemplate":6},"useLazyFetch","/docs/3.x/api/composables/use-lazy-fetch","docs/3.x/4.api/2.composables/use-lazy-fetch",{"title":551,"path":552,"stem":553,"titleTemplate":6},"useLoadingIndicator","/docs/3.x/api/composables/use-loading-indicator","docs/3.x/4.api/2.composables/use-loading-indicator",{"title":555,"path":556,"stem":557,"titleTemplate":6},"useNuxtApp","/docs/3.x/api/composables/use-nuxt-app","docs/3.x/4.api/2.composables/use-nuxt-app",{"title":559,"path":560,"stem":561,"titleTemplate":6},"useNuxtData","/docs/3.x/api/composables/use-nuxt-data","docs/3.x/4.api/2.composables/use-nuxt-data",{"title":563,"path":564,"stem":565,"titleTemplate":6},"usePreviewMode","/docs/3.x/api/composables/use-preview-mode","docs/3.x/4.api/2.composables/use-preview-mode",{"title":567,"path":568,"stem":569,"titleTemplate":6},"useRequestEvent","/docs/3.x/api/composables/use-request-event","docs/3.x/4.api/2.composables/use-request-event",{"title":571,"path":572,"stem":573,"titleTemplate":6},"useRequestFetch","/docs/3.x/api/composables/use-request-fetch","docs/3.x/4.api/2.composables/use-request-fetch",{"title":575,"path":576,"stem":577,"titleTemplate":6},"useRequestHeader","/docs/3.x/api/composables/use-request-header","docs/3.x/4.api/2.composables/use-request-header",{"title":579,"path":580,"stem":581,"titleTemplate":6},"useRequestHeaders","/docs/3.x/api/composables/use-request-headers","docs/3.x/4.api/2.composables/use-request-headers",{"title":583,"path":584,"stem":585,"titleTemplate":6},"useRequestURL","/docs/3.x/api/composables/use-request-url","docs/3.x/4.api/2.composables/use-request-url",{"title":587,"path":588,"stem":589,"titleTemplate":6},"useResponseHeader","/docs/3.x/api/composables/use-response-header","docs/3.x/4.api/2.composables/use-response-header",{"title":591,"path":592,"stem":593,"titleTemplate":6},"useRoute","/docs/3.x/api/composables/use-route","docs/3.x/4.api/2.composables/use-route",{"title":595,"path":596,"stem":597,"titleTemplate":6,"badge":462},"useRouteAnnouncer","/docs/3.x/api/composables/use-route-announcer","docs/3.x/4.api/2.composables/use-route-announcer",{"title":599,"path":600,"stem":601,"titleTemplate":6},"useRouter","/docs/3.x/api/composables/use-router","docs/3.x/4.api/2.composables/use-router",{"title":603,"path":604,"stem":605,"titleTemplate":6},"useRuntimeConfig","/docs/3.x/api/composables/use-runtime-config","docs/3.x/4.api/2.composables/use-runtime-config",{"title":607,"path":608,"stem":609,"titleTemplate":6},"useRuntimeHook","/docs/3.x/api/composables/use-runtime-hook","docs/3.x/4.api/2.composables/use-runtime-hook",{"title":611,"path":612,"stem":613,"titleTemplate":6},"useSeoMeta","/docs/3.x/api/composables/use-seo-meta","docs/3.x/4.api/2.composables/use-seo-meta",{"title":615,"path":616,"stem":617,"titleTemplate":6},"useServerSeoMeta","/docs/3.x/api/composables/use-server-seo-meta","docs/3.x/4.api/2.composables/use-server-seo-meta",{"title":619,"path":620,"stem":621,"titleTemplate":6},"useState","/docs/3.x/api/composables/use-state","docs/3.x/4.api/2.composables/use-state",{"title":623,"titleTemplate":624,"icon":625,"path":626,"stem":627,"children":628,"page":108},"Утилиты","%s · Утилиты Nuxt","i-lucide-square-function","/docs/3.x/api/utils","docs/3.x/4.api/3.utils",[629,633,637,641,645,649,653,657,661,665,669,673,677,681,685,689,693,697,701,705,709,713,717,721,725,729,733,737,741],{"title":630,"path":631,"stem":632,"titleTemplate":6},"$fetch","/docs/3.x/api/utils/dollarfetch","docs/3.x/4.api/3.utils/$fetch",{"title":634,"path":635,"stem":636,"titleTemplate":6},"abortNavigation","/docs/3.x/api/utils/abort-navigation","docs/3.x/4.api/3.utils/abort-navigation",{"title":638,"path":639,"stem":640,"titleTemplate":6},"addRouteMiddleware","/docs/3.x/api/utils/add-route-middleware","docs/3.x/4.api/3.utils/add-route-middleware",{"title":642,"path":643,"stem":644,"titleTemplate":6,"badge":462},"callOnce","/docs/3.x/api/utils/call-once","docs/3.x/4.api/3.utils/call-once",{"title":646,"path":647,"stem":648,"titleTemplate":6},"clearError","/docs/3.x/api/utils/clear-error","docs/3.x/4.api/3.utils/clear-error",{"title":650,"path":651,"stem":652,"titleTemplate":6},"clearNuxtData","/docs/3.x/api/utils/clear-nuxt-data","docs/3.x/4.api/3.utils/clear-nuxt-data",{"title":654,"path":655,"stem":656,"titleTemplate":6},"clearNuxtState","/docs/3.x/api/utils/clear-nuxt-state","docs/3.x/4.api/3.utils/clear-nuxt-state",{"title":658,"path":659,"stem":660,"titleTemplate":6},"createError","/docs/3.x/api/utils/create-error","docs/3.x/4.api/3.utils/create-error",{"title":662,"path":663,"stem":664,"titleTemplate":6},"defineLazyHydrationComponent","/docs/3.x/api/utils/define-lazy-hydration-component","docs/3.x/4.api/3.utils/define-lazy-hydration-component",{"title":666,"path":667,"stem":668,"titleTemplate":6},"defineNuxtComponent","/docs/3.x/api/utils/define-nuxt-component","docs/3.x/4.api/3.utils/define-nuxt-component",{"title":670,"path":671,"stem":672,"titleTemplate":6},"defineNuxtPlugin","/docs/3.x/api/utils/define-nuxt-plugin","docs/3.x/4.api/3.utils/define-nuxt-plugin",{"title":674,"path":675,"stem":676,"titleTemplate":6},"defineNuxtRouteMiddleware","/docs/3.x/api/utils/define-nuxt-route-middleware","docs/3.x/4.api/3.utils/define-nuxt-route-middleware",{"title":678,"path":679,"stem":680,"titleTemplate":6},"definePageMeta","/docs/3.x/api/utils/define-page-meta","docs/3.x/4.api/3.utils/define-page-meta",{"title":682,"path":683,"stem":684,"titleTemplate":6},"defineRouteRules","/docs/3.x/api/utils/define-route-rules","docs/3.x/4.api/3.utils/define-route-rules",{"title":686,"path":687,"stem":688,"titleTemplate":6},"navigateTo","/docs/3.x/api/utils/navigate-to","docs/3.x/4.api/3.utils/navigate-to",{"title":690,"path":691,"stem":692,"titleTemplate":6},"onBeforeRouteLeave","/docs/3.x/api/utils/on-before-route-leave","docs/3.x/4.api/3.utils/on-before-route-leave",{"title":694,"path":695,"stem":696,"titleTemplate":6},"onBeforeRouteUpdate","/docs/3.x/api/utils/on-before-route-update","docs/3.x/4.api/3.utils/on-before-route-update",{"title":698,"path":699,"stem":700,"titleTemplate":6},"onNuxtReady","/docs/3.x/api/utils/on-nuxt-ready","docs/3.x/4.api/3.utils/on-nuxt-ready",{"title":702,"path":703,"stem":704,"titleTemplate":6},"prefetchComponents","/docs/3.x/api/utils/prefetch-components","docs/3.x/4.api/3.utils/prefetch-components",{"title":706,"path":707,"stem":708,"titleTemplate":6},"preloadComponents","/docs/3.x/api/utils/preload-components","docs/3.x/4.api/3.utils/preload-components",{"title":710,"path":711,"stem":712,"titleTemplate":6},"preloadRouteComponents","/docs/3.x/api/utils/preload-route-components","docs/3.x/4.api/3.utils/preload-route-components",{"title":714,"path":715,"stem":716,"titleTemplate":6},"prerenderRoutes","/docs/3.x/api/utils/prerender-routes","docs/3.x/4.api/3.utils/prerender-routes",{"title":718,"path":719,"stem":720,"titleTemplate":6,"badge":462},"refreshCookie","/docs/3.x/api/utils/refresh-cookie","docs/3.x/4.api/3.utils/refresh-cookie",{"title":722,"path":723,"stem":724,"titleTemplate":6},"refreshNuxtData","/docs/3.x/api/utils/refresh-nuxt-data","docs/3.x/4.api/3.utils/refresh-nuxt-data",{"title":726,"path":727,"stem":728,"titleTemplate":6},"reloadNuxtApp","/docs/3.x/api/utils/reload-nuxt-app","docs/3.x/4.api/3.utils/reload-nuxt-app",{"title":730,"path":731,"stem":732,"titleTemplate":6},"setPageLayout","/docs/3.x/api/utils/set-page-layout","docs/3.x/4.api/3.utils/set-page-layout",{"title":734,"path":735,"stem":736,"titleTemplate":6},"setResponseStatus","/docs/3.x/api/utils/set-response-status","docs/3.x/4.api/3.utils/set-response-status",{"title":738,"path":739,"stem":740,"titleTemplate":6},"showError","/docs/3.x/api/utils/show-error","docs/3.x/4.api/3.utils/show-error",{"title":742,"path":743,"stem":744,"titleTemplate":6},"updateAppConfig","/docs/3.x/api/utils/update-app-config","docs/3.x/4.api/3.utils/update-app-config",{"title":746,"titleTemplate":747,"icon":748,"path":749,"stem":750,"children":751,"page":108},"Команды","%s · Команды Nuxt","i-lucide-square-terminal","/docs/3.x/api/commands","docs/3.x/4.api/4.commands",[752,756,760,764,768,772,776,780,784,788,792,796,800,804,808,812],{"title":753,"path":754,"stem":755,"titleTemplate":6},"nuxt add","/docs/3.x/api/commands/add","docs/3.x/4.api/4.commands/add",{"title":757,"path":758,"stem":759,"titleTemplate":6},"nuxt analyze","/docs/3.x/api/commands/analyze","docs/3.x/4.api/4.commands/analyze",{"title":761,"path":762,"stem":763,"titleTemplate":6},"nuxt build","/docs/3.x/api/commands/build","docs/3.x/4.api/4.commands/build",{"title":765,"path":766,"stem":767,"titleTemplate":6},"nuxt build-module","/docs/3.x/api/commands/build-module","docs/3.x/4.api/4.commands/build-module",{"title":769,"path":770,"stem":771,"titleTemplate":6},"nuxt cleanup","/docs/3.x/api/commands/cleanup","docs/3.x/4.api/4.commands/cleanup",{"title":773,"path":774,"stem":775,"titleTemplate":6},"nuxt dev","/docs/3.x/api/commands/dev","docs/3.x/4.api/4.commands/dev",{"title":777,"path":778,"stem":779,"titleTemplate":6},"Nuxt DevTools (nuxt devtools)","/docs/3.x/api/commands/devtools","docs/3.x/4.api/4.commands/devtools",{"title":781,"path":782,"stem":783,"titleTemplate":6},"Статическая генерация (nuxt generate)","/docs/3.x/api/commands/generate","docs/3.x/4.api/4.commands/generate",{"title":785,"path":786,"stem":787,"titleTemplate":6},"nuxt info","/docs/3.x/api/commands/info","docs/3.x/4.api/4.commands/info",{"title":789,"path":790,"stem":791,"titleTemplate":6},"create nuxt","/docs/3.x/api/commands/init","docs/3.x/4.api/4.commands/init",{"title":793,"path":794,"stem":795,"titleTemplate":6},"nuxt module","/docs/3.x/api/commands/module","docs/3.x/4.api/4.commands/module",{"title":797,"path":798,"stem":799,"titleTemplate":6},"Подготовка проекта (nuxt prepare)","/docs/3.x/api/commands/prepare","docs/3.x/4.api/4.commands/prepare",{"title":801,"path":802,"stem":803,"titleTemplate":6},"Предпросмотр сборки (nuxt preview)","/docs/3.x/api/commands/preview","docs/3.x/4.api/4.commands/preview",{"title":805,"path":806,"stem":807,"titleTemplate":6},"nuxt test","/docs/3.x/api/commands/test","docs/3.x/4.api/4.commands/test",{"title":809,"path":810,"stem":811,"titleTemplate":6},"Проверка типов (nuxt typecheck)","/docs/3.x/api/commands/typecheck","docs/3.x/4.api/4.commands/typecheck",{"title":813,"path":814,"stem":815,"titleTemplate":6},"nuxt upgrade","/docs/3.x/api/commands/upgrade","docs/3.x/4.api/4.commands/upgrade",{"title":410,"titleTemplate":817,"icon":818,"path":819,"stem":820,"children":821,"page":108},"%s · Nuxt Kit","i-lucide-package","/docs/3.x/api/kit","docs/3.x/4.api/5.kit",[822,825,829,833,837,841,845,849,853,857,861,865,869,872,876,880,884,888],{"title":268,"path":823,"stem":824,"titleTemplate":6},"/docs/3.x/api/kit/modules","docs/3.x/4.api/5.kit/1.modules",{"title":826,"path":827,"stem":828,"titleTemplate":6},"Конфигурация runtime","/docs/3.x/api/kit/runtime-config","docs/3.x/4.api/5.kit/10.runtime-config",{"title":830,"path":831,"stem":832,"titleTemplate":6},"Шаблоны","/docs/3.x/api/kit/templates","docs/3.x/4.api/5.kit/10.templates",{"title":834,"path":835,"stem":836,"titleTemplate":6},"Nitro","/docs/3.x/api/kit/nitro","docs/3.x/4.api/5.kit/11.nitro",{"title":838,"path":839,"stem":840,"titleTemplate":6},"Разрешение путей","/docs/3.x/api/kit/resolving","docs/3.x/4.api/5.kit/12.resolving",{"title":842,"path":843,"stem":844,"titleTemplate":6},"Логирование","/docs/3.x/api/kit/logging","docs/3.x/4.api/5.kit/13.logging",{"title":846,"path":847,"stem":848,"titleTemplate":6},"Сборщик","/docs/3.x/api/kit/builder","docs/3.x/4.api/5.kit/14.builder",{"title":850,"path":851,"stem":852,"titleTemplate":6},"Примеры","/docs/3.x/api/kit/examples","docs/3.x/4.api/5.kit/15.examples",{"title":854,"path":855,"stem":856,"titleTemplate":6},"Слои (layers)","/docs/3.x/api/kit/layers","docs/3.x/4.api/5.kit/16.layers",{"title":858,"path":859,"stem":860,"titleTemplate":6},"Программное использование","/docs/3.x/api/kit/programmatic","docs/3.x/4.api/5.kit/2.programmatic",{"title":862,"path":863,"stem":864,"titleTemplate":6},"Совместимость","/docs/3.x/api/kit/compatibility","docs/3.x/4.api/5.kit/3.compatibility",{"title":866,"path":867,"stem":868,"titleTemplate":6},"Автоимпорты","/docs/3.x/api/kit/autoimports","docs/3.x/4.api/5.kit/4.autoimports",{"title":433,"path":870,"stem":871,"titleTemplate":6},"/docs/3.x/api/kit/components","docs/3.x/4.api/5.kit/5.components",{"title":873,"path":874,"stem":875,"titleTemplate":6},"Контекст","/docs/3.x/api/kit/context","docs/3.x/4.api/5.kit/6.context",{"title":877,"path":878,"stem":879,"titleTemplate":6},"Страницы","/docs/3.x/api/kit/pages","docs/3.x/4.api/5.kit/7.pages",{"title":881,"path":882,"stem":883,"titleTemplate":6},"Лейаут","/docs/3.x/api/kit/layout","docs/3.x/4.api/5.kit/8.layout",{"title":885,"path":886,"stem":887,"titleTemplate":6},"Мета-теги и head","/docs/3.x/api/kit/head","docs/3.x/4.api/5.kit/9.head",{"title":889,"path":890,"stem":891,"titleTemplate":6},"Плагины","/docs/3.x/api/kit/plugins","docs/3.x/4.api/5.kit/9.plugins",{"title":893,"titleTemplate":6,"icon":894,"path":895,"stem":896,"children":897,"page":108},"Advanced","i-lucide-brain","/docs/3.x/api/advanced","docs/3.x/4.api/6.advanced",[898,901],{"title":406,"path":899,"stem":900,"titleTemplate":6},"/docs/3.x/api/advanced/hooks","docs/3.x/4.api/6.advanced/1.hooks",{"title":902,"path":903,"stem":904,"titleTemplate":6},"Метаданные import.meta","/docs/3.x/api/advanced/import-meta","docs/3.x/4.api/6.advanced/2.import-meta",{"title":906,"path":907,"stem":908,"titleTemplate":909,"icon":32},"Конфигурация Nuxt","/docs/3.x/api/nuxt-config","docs/3.x/4.api/6.nuxt-config","%s",{"title":911,"titleTemplate":912,"icon":913,"path":914,"stem":915,"children":916,"page":108},"Examples","%s · Nuxt Examples","i-lucide-app-window-mac","/docs/3.x/examples","docs/3.x/4.examples",[917,921,943,959,996],{"title":918,"path":919,"stem":920,"titleTemplate":6},"Привет, мир","/docs/3.x/examples/hello-world","docs/3.x/4.examples/0.hello-world",{"title":922,"path":923,"stem":924,"children":925,"page":108},"Features","/docs/3.x/examples/features","docs/3.x/4.examples/1.features",[926,929,932,935,939],{"title":260,"path":927,"stem":928,"titleTemplate":6},"/docs/3.x/examples/features/auto-imports","docs/3.x/4.examples/1.features/1.auto-imports",{"title":64,"path":930,"stem":931,"titleTemplate":6},"/docs/3.x/examples/features/data-fetching","docs/3.x/4.examples/1.features/2.data-fetching",{"title":69,"path":933,"stem":934,"titleTemplate":6},"/docs/3.x/examples/features/state-management","docs/3.x/4.examples/1.features/3.state-management",{"title":936,"path":937,"stem":938,"titleTemplate":6},"Мета-теги","/docs/3.x/examples/features/meta-tags","docs/3.x/4.examples/1.features/4.meta-tags",{"title":940,"path":941,"stem":942,"titleTemplate":6},"Лэйауты","/docs/3.x/examples/features/layouts","docs/3.x/4.examples/1.features/5.layouts",{"title":944,"path":945,"stem":946,"children":947,"page":108},"Routing","/docs/3.x/examples/routing","docs/3.x/4.examples/2.routing",[948,952,955],{"title":949,"path":950,"stem":951,"titleTemplate":6},"Промежуточное ПО (Middleware)","/docs/3.x/examples/routing/middleware","docs/3.x/4.examples/2.routing/middleware",{"title":877,"path":953,"stem":954,"titleTemplate":6},"/docs/3.x/examples/routing/pages","docs/3.x/4.examples/2.routing/pages",{"title":956,"path":957,"stem":958,"titleTemplate":6},"Универсальный роутер","/docs/3.x/examples/routing/universal-router","docs/3.x/4.examples/2.routing/universal-router",{"title":893,"path":960,"stem":961,"children":962,"page":108},"/docs/3.x/examples/advanced","docs/3.x/4.examples/4.advanced",[963,966,969,973,977,981,985,988,992],{"title":84,"path":964,"stem":965,"titleTemplate":6},"/docs/3.x/examples/advanced/config-extends","docs/3.x/4.examples/4.advanced/config-extends",{"title":74,"path":967,"stem":968,"titleTemplate":6},"/docs/3.x/examples/advanced/error-handling","docs/3.x/4.examples/4.advanced/error-handling",{"title":970,"path":971,"stem":972,"titleTemplate":6},"Синтаксис JSX / TSX","/docs/3.x/examples/advanced/jsx","docs/3.x/4.examples/4.advanced/jsx",{"title":974,"path":975,"stem":976,"titleTemplate":6},"Локаль","/docs/3.x/examples/advanced/locale","docs/3.x/4.examples/4.advanced/locale",{"title":978,"path":979,"stem":980,"titleTemplate":6},"Модуль расширения страниц","/docs/3.x/examples/advanced/module-extend-pages","docs/3.x/4.examples/4.advanced/module-extend-pages",{"title":982,"path":983,"stem":984,"titleTemplate":6},"Телепорт","/docs/3.x/examples/advanced/teleport","docs/3.x/4.examples/4.advanced/teleport",{"title":99,"path":986,"stem":987,"titleTemplate":6},"/docs/3.x/examples/advanced/testing","docs/3.x/4.examples/4.advanced/testing",{"title":989,"path":990,"stem":991,"titleTemplate":6},"Композабл useCookie","/docs/3.x/examples/advanced/use-cookie","docs/3.x/4.examples/4.advanced/use-cookie",{"title":993,"path":994,"stem":995,"titleTemplate":6},"Использование пользовательского fetch-композабла","/docs/3.x/examples/advanced/use-custom-fetch-composable","docs/3.x/4.examples/4.advanced/use-custom-fetch-composable",{"title":997,"path":998,"stem":999,"children":1000,"page":108},"Experimental","/docs/3.x/examples/experimental","docs/3.x/4.examples/7.experimental",[1001],{"title":1002,"path":1003,"stem":1004,"titleTemplate":6},"WebAssembly (WASM)","/docs/3.x/examples/experimental/wasm","docs/3.x/4.examples/7.experimental/wasm",{"title":1006,"titleTemplate":1007,"icon":1008,"path":1009,"stem":1010,"children":1011,"page":108},"Сообщество","%s · Сообщество Nuxt","i-lucide-messages-square","/docs/3.x/community","docs/3.x/5.community",[1012,1017,1022,1027,1032,1037],{"title":1013,"path":1014,"stem":1015,"titleTemplate":6,"icon":1016},"Получение помощи","/docs/3.x/community/getting-help","docs/3.x/5.community/2.getting-help","i-lucide-life-buoy",{"title":1018,"path":1019,"stem":1020,"titleTemplate":6,"icon":1021},"Сообщение об ошибках","/docs/3.x/community/reporting-bugs","docs/3.x/5.community/3.reporting-bugs","i-lucide-bug",{"title":1023,"path":1024,"stem":1025,"titleTemplate":6,"icon":1026},"Вклад","/docs/3.x/community/contribution","docs/3.x/5.community/4.contribution","i-lucide-git-pull-request",{"title":1028,"path":1029,"stem":1030,"titleTemplate":6,"icon":1031},"Фреймворк","/docs/3.x/community/framework-contribution","docs/3.x/5.community/5.framework-contribution","i-lucide-github",{"title":1033,"path":1034,"stem":1035,"titleTemplate":6,"icon":1036},"План развития","/docs/3.x/community/roadmap","docs/3.x/5.community/6.roadmap","i-lucide-map",{"title":1038,"path":1039,"stem":1040,"titleTemplate":6,"icon":1041},"Релизы","/docs/3.x/community/changelog","docs/3.x/5.community/7.changelog","i-lucide-bell-dot",{"title":1043,"titleTemplate":1044,"icon":1045,"path":1046,"stem":1047,"children":1048,"page":108},"Nuxt Bridge","%s · Nuxt Bridge","i-lucide-ship","/docs/3.x/bridge","docs/3.x/6.bridge",[1049,1053,1057,1060,1064,1068,1072,1075,1078,1081],{"title":1050,"path":1051,"stem":1052,"titleTemplate":6},"Обзор","/docs/3.x/bridge/overview","docs/3.x/6.bridge/1.overview",{"title":1054,"path":1055,"stem":1056,"titleTemplate":6},"Конфигурация","/docs/3.x/bridge/configuration","docs/3.x/6.bridge/10.configuration",{"title":276,"path":1058,"stem":1059,"titleTemplate":6},"/docs/3.x/bridge/typescript","docs/3.x/6.bridge/2.typescript",{"title":1061,"path":1062,"stem":1063,"titleTemplate":6},"Устаревшее Composition API","/docs/3.x/bridge/bridge-composition-api","docs/3.x/6.bridge/3.bridge-composition-api",{"title":1065,"path":1066,"stem":1067,"titleTemplate":6},"Плагины и middleware","/docs/3.x/bridge/plugins-and-middleware","docs/3.x/6.bridge/4.plugins-and-middleware",{"title":1069,"path":1070,"stem":1071,"titleTemplate":6},"Новый Composition API","/docs/3.x/bridge/nuxt3-compatible-api","docs/3.x/6.bridge/5.nuxt3-compatible-api",{"title":936,"path":1073,"stem":1074,"titleTemplate":6},"/docs/3.x/bridge/meta","docs/3.x/6.bridge/6.meta",{"title":826,"path":1076,"stem":1077,"titleTemplate":6},"/docs/3.x/bridge/runtime-config","docs/3.x/6.bridge/7.runtime-config",{"title":834,"path":1079,"stem":1080,"titleTemplate":6},"/docs/3.x/bridge/nitro","docs/3.x/6.bridge/8.nitro",{"title":1082,"path":1083,"stem":1084,"titleTemplate":6},"Vite","/docs/3.x/bridge/vite","docs/3.x/6.bridge/9.vite",{"title":1086,"titleTemplate":1087,"icon":107,"path":1088,"stem":1089,"children":1090,"page":108},"Миграция на Nuxt 3","Миграция на Nuxt 3: %s","/docs/3.x/migration","docs/3.x/7.migration",[1091,1094,1098,1101,1104,1107,1110,1113,1116,1120,1124],{"title":1050,"path":1092,"stem":1093,"titleTemplate":6},"/docs/3.x/migration/overview","docs/3.x/7.migration/1.overview",{"title":1095,"path":1096,"stem":1097,"titleTemplate":6},"Инструменты сборки","/docs/3.x/migration/bundling","docs/3.x/7.migration/10.bundling",{"title":79,"path":1099,"stem":1100,"titleTemplate":6},"/docs/3.x/migration/server","docs/3.x/7.migration/11.server",{"title":1054,"path":1102,"stem":1103,"titleTemplate":6},"/docs/3.x/migration/configuration","docs/3.x/7.migration/2.configuration",{"title":268,"path":1105,"stem":1106,"titleTemplate":6},"/docs/3.x/migration/module-authors","docs/3.x/7.migration/20.module-authors",{"title":260,"path":1108,"stem":1109,"titleTemplate":6},"/docs/3.x/migration/auto-imports","docs/3.x/7.migration/3.auto-imports",{"title":936,"path":1111,"stem":1112,"titleTemplate":6},"/docs/3.x/migration/meta","docs/3.x/7.migration/4.meta",{"title":1065,"path":1114,"stem":1115,"titleTemplate":6},"/docs/3.x/migration/plugins-and-middleware","docs/3.x/7.migration/5.plugins-and-middleware",{"title":1117,"path":1118,"stem":1119,"titleTemplate":6},"Страницы и Лейауты","/docs/3.x/migration/pages-and-layouts","docs/3.x/7.migration/6.pages-and-layouts",{"title":1121,"path":1122,"stem":1123,"titleTemplate":6},"Опции компонента","/docs/3.x/migration/component-options","docs/3.x/7.migration/7.component-options",{"title":1125,"path":1126,"stem":1127,"titleTemplate":6},"Конфигурация времени выполнения (runtime)","/docs/3.x/migration/runtime-config","docs/3.x/7.migration/8.runtime-config",{"title":5,"titleTemplate":6,"icon":7,"path":1129,"stem":1130,"children":1131,"page":108},"/docs/4.x","docs/4.x",[1132,1197,1314,1455,1846,1923,1949,1989],{"title":1133,"titleTemplate":1134,"icon":14,"path":1135,"stem":1136,"children":1137,"page":108},"Начать","%s · Начните работать с Nuxt","/docs/4.x/getting-started","docs/4.x/1.getting-started",[1138,1141,1144,1147,1151,1155,1159,1162,1166,1169,1172,1175,1178,1181,1185,1188,1191,1194],{"title":19,"path":1139,"stem":1140,"titleTemplate":6,"icon":22},"/docs/4.x/getting-started/introduction","docs/4.x/1.getting-started/01.introduction",{"title":24,"path":1142,"stem":1143,"titleTemplate":6,"icon":27},"/docs/4.x/getting-started/installation","docs/4.x/1.getting-started/02.installation",{"title":1054,"path":1145,"stem":1146,"titleTemplate":6,"icon":32},"/docs/4.x/getting-started/configuration","docs/4.x/1.getting-started/03.configuration",{"title":1148,"path":1149,"stem":1150,"titleTemplate":6,"icon":37},"Представления (Views)","/docs/4.x/getting-started/views","docs/4.x/1.getting-started/04.views",{"title":1152,"path":1153,"stem":1154,"titleTemplate":6,"icon":42},"Ресурсы (Assets)","/docs/4.x/getting-started/assets","docs/4.x/1.getting-started/05.assets",{"title":1156,"path":1157,"stem":1158,"titleTemplate":6,"icon":47},"Стили","/docs/4.x/getting-started/styling","docs/4.x/1.getting-started/06.styling",{"title":49,"path":1160,"stem":1161,"titleTemplate":6,"icon":52},"/docs/4.x/getting-started/routing","docs/4.x/1.getting-started/07.routing",{"title":1163,"path":1164,"stem":1165,"titleTemplate":6,"icon":57},"SEO и мета-теги","/docs/4.x/getting-started/seo-meta","docs/4.x/1.getting-started/08.seo-meta",{"title":59,"path":1167,"stem":1168,"titleTemplate":6,"icon":62},"/docs/4.x/getting-started/transitions","docs/4.x/1.getting-started/09.transitions",{"title":64,"path":1170,"stem":1171,"titleTemplate":6,"icon":67},"/docs/4.x/getting-started/data-fetching","docs/4.x/1.getting-started/10.data-fetching",{"title":69,"path":1173,"stem":1174,"titleTemplate":6,"icon":72},"/docs/4.x/getting-started/state-management","docs/4.x/1.getting-started/11.state-management",{"title":74,"path":1176,"stem":1177,"titleTemplate":6,"icon":77},"/docs/4.x/getting-started/error-handling","docs/4.x/1.getting-started/12.error-handling",{"title":79,"path":1179,"stem":1180,"titleTemplate":6,"icon":82},"/docs/4.x/getting-started/server","docs/4.x/1.getting-started/13.server",{"title":1182,"path":1183,"stem":1184,"titleTemplate":6,"icon":87},"Слои (Layers)","/docs/4.x/getting-started/layers","docs/4.x/1.getting-started/14.layers",{"title":89,"path":1186,"stem":1187,"titleTemplate":6,"icon":92},"/docs/4.x/getting-started/prerendering","docs/4.x/1.getting-started/15.prerendering",{"title":94,"path":1189,"stem":1190,"titleTemplate":6,"icon":97},"/docs/4.x/getting-started/deployment","docs/4.x/1.getting-started/16.deployment",{"title":99,"path":1192,"stem":1193,"titleTemplate":6,"icon":102},"/docs/4.x/getting-started/testing","docs/4.x/1.getting-started/17.testing",{"title":104,"path":1195,"stem":1196,"titleTemplate":6,"icon":107},"/docs/4.x/getting-started/upgrade","docs/4.x/1.getting-started/18.upgrade",{"title":1198,"titleTemplate":1199,"icon":112,"path":1200,"stem":1201,"children":1202,"page":108},"Структура директорий","%s · Структура директорий Nuxt","/docs/4.x/directory-structure","docs/4.x/2.directory-structure",[1203,1207,1211,1264,1268,1271,1274,1278,1283,1286,1290,1294,1298,1301,1304,1307,1311],{"title":117,"path":1204,"stem":1205,"titleTemplate":6,"icon":1206},"/docs/4.x/directory-structure/nuxt","docs/4.x/2.directory-structure/0.nuxt","i-vscode-icons-folder-type-temp",{"title":122,"path":1208,"stem":1209,"titleTemplate":6,"icon":1210},"/docs/4.x/directory-structure/output","docs/4.x/2.directory-structure/0.output","i-vscode-icons-folder-type-package",{"title":1212,"titleTemplate":1199,"head":1213,"defaultOpen":1215,"icon":1216,"path":1217,"stem":1218,"children":1219,"page":108},"app",{"title":1214},"app/",true,"i-vscode-icons-folder-type-app","/docs/4.x/directory-structure/app","docs/4.x/2.directory-structure/1.app",[1220,1225,1229,1233,1237,1241,1245,1249,1253,1257,1261],{"title":1221,"path":1222,"stem":1223,"titleTemplate":6,"icon":1224},"assets (ресурсы)","/docs/4.x/directory-structure/app/assets","docs/4.x/2.directory-structure/1.app/1.assets","i-vscode-icons-folder-type-asset",{"title":1226,"path":1227,"stem":1228,"titleTemplate":6,"icon":133},"components (компоненты)","/docs/4.x/directory-structure/app/components","docs/4.x/2.directory-structure/1.app/1.components",{"title":135,"path":1230,"stem":1231,"titleTemplate":6,"icon":1232},"/docs/4.x/directory-structure/app/composables","docs/4.x/2.directory-structure/1.app/1.composables","i-vscode-icons-folder-type-src",{"title":1234,"path":1235,"stem":1236,"titleTemplate":6,"icon":151},"layouts (макеты)","/docs/4.x/directory-structure/app/layouts","docs/4.x/2.directory-structure/1.app/1.layouts",{"title":1238,"path":1239,"stem":1240,"titleTemplate":6,"icon":156},"middleware (прослойки)","/docs/4.x/directory-structure/app/middleware","docs/4.x/2.directory-structure/1.app/1.middleware",{"title":1242,"path":1243,"stem":1244,"titleTemplate":6,"icon":151},"pages (страницы)","/docs/4.x/directory-structure/app/pages","docs/4.x/2.directory-structure/1.app/1.pages",{"title":1246,"path":1247,"stem":1248,"titleTemplate":6,"icon":173},"plugins (плагины)","/docs/4.x/directory-structure/app/plugins","docs/4.x/2.directory-structure/1.app/1.plugins",{"title":188,"path":1250,"stem":1251,"titleTemplate":6,"icon":1252},"/docs/4.x/directory-structure/app/utils","docs/4.x/2.directory-structure/1.app/1.utils","i-vscode-icons-folder-type-tools",{"title":210,"path":1254,"stem":1255,"titleTemplate":6,"icon":1256},"/docs/4.x/directory-structure/app/app","docs/4.x/2.directory-structure/1.app/3.app","i-vscode-icons-file-type-vue",{"title":214,"path":1258,"stem":1259,"titleTemplate":6,"icon":1260},"/docs/4.x/directory-structure/app/app-config","docs/4.x/2.directory-structure/1.app/3.app-config","i-vscode-icons-file-type-light-config",{"title":218,"path":1262,"stem":1263,"titleTemplate":6,"icon":1256},"/docs/4.x/directory-structure/app/error","docs/4.x/2.directory-structure/1.app/3.error",{"title":139,"path":1265,"stem":1266,"titleTemplate":6,"icon":1267},"/docs/4.x/directory-structure/content","docs/4.x/2.directory-structure/1.content","i-vscode-icons-folder-type-log",{"title":143,"path":1269,"stem":1270,"titleTemplate":6,"icon":146},"/docs/4.x/directory-structure/layers","docs/4.x/2.directory-structure/1.layers",{"title":158,"path":1272,"stem":1273,"titleTemplate":6,"icon":146},"/docs/4.x/directory-structure/modules","docs/4.x/2.directory-structure/1.modules",{"title":162,"path":1275,"stem":1276,"titleTemplate":6,"icon":1277},"/docs/4.x/directory-structure/node_modules","docs/4.x/2.directory-structure/1.node_modules","i-vscode-icons-folder-type-node",{"title":1279,"path":1280,"stem":1281,"titleTemplate":6,"icon":1282},"public (статика)","/docs/4.x/directory-structure/public","docs/4.x/2.directory-structure/1.public","i-vscode-icons-folder-type-public",{"title":179,"path":1284,"stem":1285,"titleTemplate":6,"icon":182},"/docs/4.x/directory-structure/server","docs/4.x/2.directory-structure/1.server",{"title":184,"path":1287,"stem":1288,"titleTemplate":6,"icon":1289},"/docs/4.x/directory-structure/shared","docs/4.x/2.directory-structure/1.shared","i-vscode-icons-folder-type-shared",{"title":192,"path":1291,"stem":1292,"titleTemplate":6,"icon":1293},"/docs/4.x/directory-structure/env","docs/4.x/2.directory-structure/2.env","i-vscode-icons-file-type-dotenv",{"title":197,"path":1295,"stem":1296,"titleTemplate":6,"icon":1297},"/docs/4.x/directory-structure/gitignore","docs/4.x/2.directory-structure/2.gitignore","i-vscode-icons-file-type-git",{"title":201,"path":1299,"stem":1300,"titleTemplate":6,"icon":204},"/docs/4.x/directory-structure/nuxtignore","docs/4.x/2.directory-structure/2.nuxtignore",{"title":206,"path":1302,"stem":1303,"titleTemplate":6,"icon":204},"/docs/4.x/directory-structure/nuxtrc","docs/4.x/2.directory-structure/2.nuxtrc",{"title":222,"path":1305,"stem":1306,"titleTemplate":6,"icon":204},"/docs/4.x/directory-structure/nuxt-config","docs/4.x/2.directory-structure/3.nuxt-config",{"title":226,"path":1308,"stem":1309,"titleTemplate":6,"icon":1310},"/docs/4.x/directory-structure/package","docs/4.x/2.directory-structure/3.package","i-vscode-icons-file-type-npm",{"title":230,"path":1312,"stem":1313,"titleTemplate":6,"icon":233},"/docs/4.x/directory-structure/tsconfig","docs/4.x/2.directory-structure/3.tsconfig",{"title":235,"titleTemplate":6,"icon":236,"path":1315,"stem":1316,"children":1317,"page":108},"/docs/4.x/guide","docs/4.x/3.guide",[1318,1343,1357,1368,1396,1414],{"title":241,"titleTemplate":242,"icon":243,"path":1319,"stem":1320,"children":1321,"page":108},"/docs/4.x/guide/concepts","docs/4.x/3.guide/1.concepts",[1322,1325,1328,1331,1334,1337,1340],{"title":248,"path":1323,"stem":1324,"titleTemplate":6},"/docs/4.x/guide/concepts/rendering","docs/4.x/3.guide/1.concepts/1.rendering",{"title":256,"path":1326,"stem":1327,"titleTemplate":6},"/docs/4.x/guide/concepts/nuxt-lifecycle","docs/4.x/3.guide/1.concepts/2.nuxt-lifecycle",{"title":866,"path":1329,"stem":1330,"titleTemplate":6},"/docs/4.x/guide/concepts/auto-imports","docs/4.x/3.guide/1.concepts/3.auto-imports",{"title":264,"path":1332,"stem":1333,"titleTemplate":6},"/docs/4.x/guide/concepts/server-engine","docs/4.x/3.guide/1.concepts/4.server-engine",{"title":268,"path":1335,"stem":1336,"titleTemplate":6},"/docs/4.x/guide/concepts/modules","docs/4.x/3.guide/1.concepts/5.modules",{"title":276,"path":1338,"stem":1339,"titleTemplate":6},"/docs/4.x/guide/concepts/typescript","docs/4.x/3.guide/1.concepts/8.typescript",{"title":280,"path":1341,"stem":1342,"titleTemplate":6},"/docs/4.x/guide/concepts/code-style","docs/4.x/3.guide/1.concepts/9.code-style",{"title":284,"titleTemplate":285,"icon":286,"path":1344,"stem":1345,"children":1346,"page":108},"/docs/4.x/guide/best-practices","docs/4.x/3.guide/2.best-practices",[1347,1351,1354],{"title":1348,"path":1349,"stem":1350,"titleTemplate":6},"Nuxt и гидрация","/docs/4.x/guide/best-practices/hydration","docs/4.x/3.guide/2.best-practices/hydration",{"title":295,"path":1352,"stem":1353,"titleTemplate":6},"/docs/4.x/guide/best-practices/performance","docs/4.x/3.guide/2.best-practices/performance",{"title":299,"path":1355,"stem":1356,"titleTemplate":6},"/docs/4.x/guide/best-practices/plugins","docs/4.x/3.guide/2.best-practices/plugins",{"title":303,"titleTemplate":304,"icon":305,"path":1358,"stem":1359,"children":1360,"page":108},"/docs/4.x/guide/ai","docs/4.x/3.guide/3.ai",[1361,1365],{"title":1362,"path":1363,"stem":1364,"titleTemplate":6},"MCP Server","/docs/4.x/guide/ai/mcp","docs/4.x/3.guide/3.ai/1.mcp",{"title":314,"path":1366,"stem":1367,"titleTemplate":6},"/docs/4.x/guide/ai/llms-txt","docs/4.x/3.guide/3.ai/2.llms-txt",{"title":318,"titleTemplate":1369,"icon":320,"path":1370,"stem":1371,"children":1372,"page":108},"%s · Руководство автора модулей Nuxt","/docs/4.x/guide/modules","docs/4.x/3.guide/4.modules",[1373,1376,1379,1383,1387,1390,1393],{"title":325,"path":1374,"stem":1375,"titleTemplate":6},"/docs/4.x/guide/modules/getting-started","docs/4.x/3.guide/4.modules/1.getting-started",{"title":329,"path":1377,"stem":1378,"titleTemplate":6},"/docs/4.x/guide/modules/module-anatomy","docs/4.x/3.guide/4.modules/2.module-anatomy",{"title":1380,"path":1381,"stem":1382,"titleTemplate":6},"Плагины, компоненты и другое","/docs/4.x/guide/modules/recipes-basics","docs/4.x/3.guide/4.modules/3.recipes-basics",{"title":1384,"path":1385,"stem":1386,"titleTemplate":6},"Хуки и расширение типов","/docs/4.x/guide/modules/recipes-advanced","docs/4.x/3.guide/4.modules/4.recipes-advanced",{"title":341,"path":1388,"stem":1389,"titleTemplate":6},"/docs/4.x/guide/modules/testing","docs/4.x/3.guide/4.modules/5.testing",{"title":284,"path":1391,"stem":1392,"titleTemplate":6},"/docs/4.x/guide/modules/best-practices","docs/4.x/3.guide/4.modules/6.best-practices",{"title":348,"path":1394,"stem":1395,"titleTemplate":6},"/docs/4.x/guide/modules/ecosystem","docs/4.x/3.guide/4.modules/7.ecosystem",{"title":352,"titleTemplate":353,"icon":354,"path":1397,"stem":1398,"children":1399,"page":108},"/docs/4.x/guide/recipes","docs/4.x/3.guide/5.recipes",[1400,1404,1407,1411],{"title":1401,"path":1402,"stem":1403,"titleTemplate":6},"Кастомная маршрутизация","/docs/4.x/guide/recipes/custom-routing","docs/4.x/3.guide/5.recipes/1.custom-routing",{"title":363,"path":1405,"stem":1406,"titleTemplate":6},"/docs/4.x/guide/recipes/vite-plugin","docs/4.x/3.guide/5.recipes/2.vite-plugin",{"title":1408,"path":1409,"stem":1410,"titleTemplate":6},"Кастомный useFetch","/docs/4.x/guide/recipes/custom-usefetch","docs/4.x/3.guide/5.recipes/3.custom-usefetch",{"title":371,"path":1412,"stem":1413,"titleTemplate":6},"/docs/4.x/guide/recipes/sessions-and-authentication","docs/4.x/3.guide/5.recipes/4.sessions-and-authentication",{"title":1415,"titleTemplate":1416,"icon":377,"path":1417,"stem":1418,"children":1419,"page":108},"Идем дальше","%s · Nuxt Advanced","/docs/4.x/guide/going-further","docs/4.x/3.guide/6.going-further",[1420,1424,1427,1431,1435,1439,1442,1445,1448,1452],{"title":1421,"path":1422,"stem":1423,"titleTemplate":6},"Собственные события","/docs/4.x/guide/going-further/events","docs/4.x/3.guide/6.going-further/1.events",{"title":386,"path":1425,"stem":1426,"titleTemplate":6},"/docs/4.x/guide/going-further/experimental-features","docs/4.x/3.guide/6.going-further/1.experimental-features",{"title":1428,"path":1429,"stem":1430,"titleTemplate":6},"Возможности (Features)","/docs/4.x/guide/going-further/features","docs/4.x/3.guide/6.going-further/1.features",{"title":1432,"path":1433,"stem":1434,"titleTemplate":6},"Runtime-конфигурация","/docs/4.x/guide/going-further/runtime-config","docs/4.x/3.guide/6.going-further/10.runtime-config",{"title":1436,"path":1437,"stem":1438,"titleTemplate":6},"Ночной канал релизов","/docs/4.x/guide/going-further/nightly-release-channel","docs/4.x/3.guide/6.going-further/11.nightly-release-channel",{"title":406,"path":1440,"stem":1441,"titleTemplate":6},"/docs/4.x/guide/going-further/hooks","docs/4.x/3.guide/6.going-further/2.hooks",{"title":410,"path":1443,"stem":1444,"titleTemplate":6},"/docs/4.x/guide/going-further/kit","docs/4.x/3.guide/6.going-further/4.kit",{"title":414,"path":1446,"stem":1447,"titleTemplate":6},"/docs/4.x/guide/going-further/nuxt-app","docs/4.x/3.guide/6.going-further/6.nuxt-app",{"title":1449,"path":1450,"stem":1451,"titleTemplate":6},"Авторство слоёв Nuxt","/docs/4.x/guide/going-further/layers","docs/4.x/3.guide/6.going-further/7.layers",{"title":422,"path":1453,"stem":1454,"titleTemplate":6},"/docs/4.x/guide/going-further/debugging","docs/4.x/3.guide/6.going-further/9.debugging",{"title":426,"titleTemplate":1456,"icon":428,"path":1457,"stem":1458,"children":1459,"page":108},"%s · API Nuxt","/docs/4.x/api","docs/4.x/4.api",[1460,1513,1616,1707,1764,1830,1843],{"title":433,"titleTemplate":434,"icon":320,"path":1461,"stem":1462,"children":1463,"page":108},"/docs/4.x/api/components","docs/4.x/4.api/1.components",[1464,1467,1470,1473,1476,1479,1482,1485,1489,1492,1495,1498,1501,1504,1507,1510],{"title":439,"path":1465,"stem":1466,"titleTemplate":6},"/docs/4.x/api/components/client-only","docs/4.x/4.api/1.components/1.client-only",{"title":443,"path":1468,"stem":1469,"titleTemplate":6},"/docs/4.x/api/components/dev-only","docs/4.x/4.api/1.components/1.dev-only",{"title":447,"path":1471,"stem":1472,"titleTemplate":6},"/docs/4.x/api/components/nuxt-client-fallback","docs/4.x/4.api/1.components/1.nuxt-client-fallback",{"title":451,"path":1474,"stem":1475,"titleTemplate":6},"/docs/4.x/api/components/nuxt-picture","docs/4.x/4.api/1.components/10.nuxt-picture",{"title":455,"path":1477,"stem":1478,"titleTemplate":6},"/docs/4.x/api/components/teleports","docs/4.x/4.api/1.components/11.teleports",{"title":459,"path":1480,"stem":1481,"titleTemplate":6},"/docs/4.x/api/components/nuxt-route-announcer","docs/4.x/4.api/1.components/12.nuxt-route-announcer",{"title":464,"path":1483,"stem":1484,"titleTemplate":6},"/docs/4.x/api/components/nuxt-time","docs/4.x/4.api/1.components/13.nuxt-time",{"title":1486,"path":1487,"stem":1488,"titleTemplate":6},"\u003CNuxtAnnouncer>","/docs/4.x/api/components/nuxt-announcer","docs/4.x/4.api/1.components/14.nuxt-announcer",{"title":468,"path":1490,"stem":1491,"titleTemplate":6},"/docs/4.x/api/components/nuxt-page","docs/4.x/4.api/1.components/2.nuxt-page",{"title":472,"path":1493,"stem":1494,"titleTemplate":6},"/docs/4.x/api/components/nuxt-layout","docs/4.x/4.api/1.components/3.nuxt-layout",{"title":476,"path":1496,"stem":1497,"titleTemplate":6},"/docs/4.x/api/components/nuxt-link","docs/4.x/4.api/1.components/4.nuxt-link",{"title":480,"path":1499,"stem":1500,"titleTemplate":6},"/docs/4.x/api/components/nuxt-loading-indicator","docs/4.x/4.api/1.components/5.nuxt-loading-indicator",{"title":484,"path":1502,"stem":1503,"titleTemplate":6},"/docs/4.x/api/components/nuxt-error-boundary","docs/4.x/4.api/1.components/6.nuxt-error-boundary",{"title":488,"path":1505,"stem":1506,"titleTemplate":6},"/docs/4.x/api/components/nuxt-welcome","docs/4.x/4.api/1.components/7.nuxt-welcome",{"title":492,"path":1508,"stem":1509,"titleTemplate":6},"/docs/4.x/api/components/nuxt-island","docs/4.x/4.api/1.components/8.nuxt-island",{"title":496,"path":1511,"stem":1512,"titleTemplate":6},"/docs/4.x/api/components/nuxt-img","docs/4.x/4.api/1.components/9.nuxt-img",{"title":500,"titleTemplate":501,"icon":502,"path":1514,"stem":1515,"children":1516,"page":108},"/docs/4.x/api/composables","docs/4.x/4.api/2.composables",[1517,1521,1525,1528,1532,1535,1538,1541,1544,1547,1550,1553,1556,1559,1562,1565,1568,1571,1574,1577,1580,1583,1586,1589,1592,1595,1598,1601,1604,1607,1610,1613],{"title":1518,"path":1519,"stem":1520,"titleTemplate":6},"createUseAsyncData","/docs/4.x/api/composables/create-use-async-data","docs/4.x/4.api/2.composables/create-use-async-data",{"title":1522,"path":1523,"stem":1524,"titleTemplate":6},"createUseFetch","/docs/4.x/api/composables/create-use-fetch","docs/4.x/4.api/2.composables/create-use-fetch",{"title":507,"path":1526,"stem":1527,"titleTemplate":6},"/docs/4.x/api/composables/on-prehydrate","docs/4.x/4.api/2.composables/on-prehydrate",{"title":1529,"path":1530,"stem":1531,"titleTemplate":6},"useAnnouncer","/docs/4.x/api/composables/use-announcer","docs/4.x/4.api/2.composables/use-announcer",{"title":511,"path":1533,"stem":1534,"titleTemplate":6},"/docs/4.x/api/composables/use-app-config","docs/4.x/4.api/2.composables/use-app-config",{"title":515,"path":1536,"stem":1537,"titleTemplate":6},"/docs/4.x/api/composables/use-async-data","docs/4.x/4.api/2.composables/use-async-data",{"title":519,"path":1539,"stem":1540,"titleTemplate":6},"/docs/4.x/api/composables/use-cookie","docs/4.x/4.api/2.composables/use-cookie",{"title":523,"path":1542,"stem":1543,"titleTemplate":6},"/docs/4.x/api/composables/use-error","docs/4.x/4.api/2.composables/use-error",{"title":527,"path":1545,"stem":1546,"titleTemplate":6},"/docs/4.x/api/composables/use-fetch","docs/4.x/4.api/2.composables/use-fetch",{"title":531,"path":1548,"stem":1549,"titleTemplate":6},"/docs/4.x/api/composables/use-head","docs/4.x/4.api/2.composables/use-head",{"title":535,"path":1551,"stem":1552,"titleTemplate":6},"/docs/4.x/api/composables/use-head-safe","docs/4.x/4.api/2.composables/use-head-safe",{"title":539,"path":1554,"stem":1555,"titleTemplate":6},"/docs/4.x/api/composables/use-hydration","docs/4.x/4.api/2.composables/use-hydration",{"title":543,"path":1557,"stem":1558,"titleTemplate":6},"/docs/4.x/api/composables/use-lazy-async-data","docs/4.x/4.api/2.composables/use-lazy-async-data",{"title":547,"path":1560,"stem":1561,"titleTemplate":6},"/docs/4.x/api/composables/use-lazy-fetch","docs/4.x/4.api/2.composables/use-lazy-fetch",{"title":551,"path":1563,"stem":1564,"titleTemplate":6},"/docs/4.x/api/composables/use-loading-indicator","docs/4.x/4.api/2.composables/use-loading-indicator",{"title":555,"path":1566,"stem":1567,"titleTemplate":6},"/docs/4.x/api/composables/use-nuxt-app","docs/4.x/4.api/2.composables/use-nuxt-app",{"title":559,"path":1569,"stem":1570,"titleTemplate":6},"/docs/4.x/api/composables/use-nuxt-data","docs/4.x/4.api/2.composables/use-nuxt-data",{"title":563,"path":1572,"stem":1573,"titleTemplate":6},"/docs/4.x/api/composables/use-preview-mode","docs/4.x/4.api/2.composables/use-preview-mode",{"title":567,"path":1575,"stem":1576,"titleTemplate":6},"/docs/4.x/api/composables/use-request-event","docs/4.x/4.api/2.composables/use-request-event",{"title":571,"path":1578,"stem":1579,"titleTemplate":6},"/docs/4.x/api/composables/use-request-fetch","docs/4.x/4.api/2.composables/use-request-fetch",{"title":575,"path":1581,"stem":1582,"titleTemplate":6},"/docs/4.x/api/composables/use-request-header","docs/4.x/4.api/2.composables/use-request-header",{"title":579,"path":1584,"stem":1585,"titleTemplate":6},"/docs/4.x/api/composables/use-request-headers","docs/4.x/4.api/2.composables/use-request-headers",{"title":583,"path":1587,"stem":1588,"titleTemplate":6},"/docs/4.x/api/composables/use-request-url","docs/4.x/4.api/2.composables/use-request-url",{"title":587,"path":1590,"stem":1591,"titleTemplate":6},"/docs/4.x/api/composables/use-response-header","docs/4.x/4.api/2.composables/use-response-header",{"title":591,"path":1593,"stem":1594,"titleTemplate":6},"/docs/4.x/api/composables/use-route","docs/4.x/4.api/2.composables/use-route",{"title":595,"path":1596,"stem":1597,"titleTemplate":6},"/docs/4.x/api/composables/use-route-announcer","docs/4.x/4.api/2.composables/use-route-announcer",{"title":599,"path":1599,"stem":1600,"titleTemplate":6},"/docs/4.x/api/composables/use-router","docs/4.x/4.api/2.composables/use-router",{"title":603,"path":1602,"stem":1603,"titleTemplate":6},"/docs/4.x/api/composables/use-runtime-config","docs/4.x/4.api/2.composables/use-runtime-config",{"title":607,"path":1605,"stem":1606,"titleTemplate":6},"/docs/4.x/api/composables/use-runtime-hook","docs/4.x/4.api/2.composables/use-runtime-hook",{"title":611,"path":1608,"stem":1609,"titleTemplate":6},"/docs/4.x/api/composables/use-seo-meta","docs/4.x/4.api/2.composables/use-seo-meta",{"title":615,"path":1611,"stem":1612,"titleTemplate":6},"/docs/4.x/api/composables/use-server-seo-meta","docs/4.x/4.api/2.composables/use-server-seo-meta",{"title":619,"path":1614,"stem":1615,"titleTemplate":6},"/docs/4.x/api/composables/use-state","docs/4.x/4.api/2.composables/use-state",{"title":623,"titleTemplate":624,"icon":625,"path":1617,"stem":1618,"children":1619,"page":108},"/docs/4.x/api/utils","docs/4.x/4.api/3.utils",[1620,1623,1626,1629,1632,1635,1638,1641,1644,1647,1650,1653,1656,1659,1662,1665,1668,1671,1674,1677,1680,1683,1686,1689,1692,1695,1698,1701,1704],{"title":630,"path":1621,"stem":1622,"titleTemplate":6},"/docs/4.x/api/utils/dollarfetch","docs/4.x/4.api/3.utils/$fetch",{"title":634,"path":1624,"stem":1625,"titleTemplate":6},"/docs/4.x/api/utils/abort-navigation","docs/4.x/4.api/3.utils/abort-navigation",{"title":638,"path":1627,"stem":1628,"titleTemplate":6},"/docs/4.x/api/utils/add-route-middleware","docs/4.x/4.api/3.utils/add-route-middleware",{"title":642,"path":1630,"stem":1631,"titleTemplate":6},"/docs/4.x/api/utils/call-once","docs/4.x/4.api/3.utils/call-once",{"title":646,"path":1633,"stem":1634,"titleTemplate":6},"/docs/4.x/api/utils/clear-error","docs/4.x/4.api/3.utils/clear-error",{"title":650,"path":1636,"stem":1637,"titleTemplate":6},"/docs/4.x/api/utils/clear-nuxt-data","docs/4.x/4.api/3.utils/clear-nuxt-data",{"title":654,"path":1639,"stem":1640,"titleTemplate":6},"/docs/4.x/api/utils/clear-nuxt-state","docs/4.x/4.api/3.utils/clear-nuxt-state",{"title":658,"path":1642,"stem":1643,"titleTemplate":6},"/docs/4.x/api/utils/create-error","docs/4.x/4.api/3.utils/create-error",{"title":662,"path":1645,"stem":1646,"titleTemplate":6},"/docs/4.x/api/utils/define-lazy-hydration-component","docs/4.x/4.api/3.utils/define-lazy-hydration-component",{"title":666,"path":1648,"stem":1649,"titleTemplate":6},"/docs/4.x/api/utils/define-nuxt-component","docs/4.x/4.api/3.utils/define-nuxt-component",{"title":670,"path":1651,"stem":1652,"titleTemplate":6},"/docs/4.x/api/utils/define-nuxt-plugin","docs/4.x/4.api/3.utils/define-nuxt-plugin",{"title":674,"path":1654,"stem":1655,"titleTemplate":6},"/docs/4.x/api/utils/define-nuxt-route-middleware","docs/4.x/4.api/3.utils/define-nuxt-route-middleware",{"title":678,"path":1657,"stem":1658,"titleTemplate":6},"/docs/4.x/api/utils/define-page-meta","docs/4.x/4.api/3.utils/define-page-meta",{"title":682,"path":1660,"stem":1661,"titleTemplate":6},"/docs/4.x/api/utils/define-route-rules","docs/4.x/4.api/3.utils/define-route-rules",{"title":686,"path":1663,"stem":1664,"titleTemplate":6},"/docs/4.x/api/utils/navigate-to","docs/4.x/4.api/3.utils/navigate-to",{"title":690,"path":1666,"stem":1667,"titleTemplate":6},"/docs/4.x/api/utils/on-before-route-leave","docs/4.x/4.api/3.utils/on-before-route-leave",{"title":694,"path":1669,"stem":1670,"titleTemplate":6},"/docs/4.x/api/utils/on-before-route-update","docs/4.x/4.api/3.utils/on-before-route-update",{"title":698,"path":1672,"stem":1673,"titleTemplate":6},"/docs/4.x/api/utils/on-nuxt-ready","docs/4.x/4.api/3.utils/on-nuxt-ready",{"title":702,"path":1675,"stem":1676,"titleTemplate":6},"/docs/4.x/api/utils/prefetch-components","docs/4.x/4.api/3.utils/prefetch-components",{"title":706,"path":1678,"stem":1679,"titleTemplate":6},"/docs/4.x/api/utils/preload-components","docs/4.x/4.api/3.utils/preload-components",{"title":710,"path":1681,"stem":1682,"titleTemplate":6},"/docs/4.x/api/utils/preload-route-components","docs/4.x/4.api/3.utils/preload-route-components",{"title":714,"path":1684,"stem":1685,"titleTemplate":6},"/docs/4.x/api/utils/prerender-routes","docs/4.x/4.api/3.utils/prerender-routes",{"title":718,"path":1687,"stem":1688,"titleTemplate":6},"/docs/4.x/api/utils/refresh-cookie","docs/4.x/4.api/3.utils/refresh-cookie",{"title":722,"path":1690,"stem":1691,"titleTemplate":6},"/docs/4.x/api/utils/refresh-nuxt-data","docs/4.x/4.api/3.utils/refresh-nuxt-data",{"title":726,"path":1693,"stem":1694,"titleTemplate":6},"/docs/4.x/api/utils/reload-nuxt-app","docs/4.x/4.api/3.utils/reload-nuxt-app",{"title":730,"path":1696,"stem":1697,"titleTemplate":6},"/docs/4.x/api/utils/set-page-layout","docs/4.x/4.api/3.utils/set-page-layout",{"title":734,"path":1699,"stem":1700,"titleTemplate":6},"/docs/4.x/api/utils/set-response-status","docs/4.x/4.api/3.utils/set-response-status",{"title":738,"path":1702,"stem":1703,"titleTemplate":6},"/docs/4.x/api/utils/show-error","docs/4.x/4.api/3.utils/show-error",{"title":742,"path":1705,"stem":1706,"titleTemplate":6},"/docs/4.x/api/utils/update-app-config","docs/4.x/4.api/3.utils/update-app-config",{"title":746,"titleTemplate":6,"icon":748,"path":1708,"stem":1709,"children":1710,"page":108},"/docs/4.x/api/commands","docs/4.x/4.api/4.commands",[1711,1714,1717,1720,1723,1726,1729,1733,1737,1740,1743,1746,1750,1754,1757,1761],{"title":753,"path":1712,"stem":1713,"titleTemplate":6},"/docs/4.x/api/commands/add","docs/4.x/4.api/4.commands/add",{"title":757,"path":1715,"stem":1716,"titleTemplate":6},"/docs/4.x/api/commands/analyze","docs/4.x/4.api/4.commands/analyze",{"title":761,"path":1718,"stem":1719,"titleTemplate":6},"/docs/4.x/api/commands/build","docs/4.x/4.api/4.commands/build",{"title":765,"path":1721,"stem":1722,"titleTemplate":6},"/docs/4.x/api/commands/build-module","docs/4.x/4.api/4.commands/build-module",{"title":769,"path":1724,"stem":1725,"titleTemplate":6},"/docs/4.x/api/commands/cleanup","docs/4.x/4.api/4.commands/cleanup",{"title":773,"path":1727,"stem":1728,"titleTemplate":6},"/docs/4.x/api/commands/dev","docs/4.x/4.api/4.commands/dev",{"title":1730,"path":1731,"stem":1732,"titleTemplate":6},"nuxt devtools","/docs/4.x/api/commands/devtools","docs/4.x/4.api/4.commands/devtools",{"title":1734,"path":1735,"stem":1736,"titleTemplate":6},"nuxt generate","/docs/4.x/api/commands/generate","docs/4.x/4.api/4.commands/generate",{"title":785,"path":1738,"stem":1739,"titleTemplate":6},"/docs/4.x/api/commands/info","docs/4.x/4.api/4.commands/info",{"title":789,"path":1741,"stem":1742,"titleTemplate":6},"/docs/4.x/api/commands/init","docs/4.x/4.api/4.commands/init",{"title":793,"path":1744,"stem":1745,"titleTemplate":6},"/docs/4.x/api/commands/module","docs/4.x/4.api/4.commands/module",{"title":1747,"path":1748,"stem":1749,"titleTemplate":6},"nuxt prepare","/docs/4.x/api/commands/prepare","docs/4.x/4.api/4.commands/prepare",{"title":1751,"path":1752,"stem":1753,"titleTemplate":6},"nuxt preview","/docs/4.x/api/commands/preview","docs/4.x/4.api/4.commands/preview",{"title":805,"path":1755,"stem":1756,"titleTemplate":6},"/docs/4.x/api/commands/test","docs/4.x/4.api/4.commands/test",{"title":1758,"path":1759,"stem":1760,"titleTemplate":6},"nuxt typecheck","/docs/4.x/api/commands/typecheck","docs/4.x/4.api/4.commands/typecheck",{"title":813,"path":1762,"stem":1763,"titleTemplate":6},"/docs/4.x/api/commands/upgrade","docs/4.x/4.api/4.commands/upgrade",{"title":1765,"titleTemplate":817,"icon":818,"path":1766,"stem":1767,"children":1768,"page":108},"Инструментарий Nuxt","/docs/4.x/api/kit","docs/4.x/4.api/5.kit",[1769,1772,1776,1779,1783,1787,1791,1795,1798,1801,1804,1807,1810,1813,1816,1819,1823,1827],{"title":268,"path":1770,"stem":1771,"titleTemplate":6},"/docs/4.x/api/kit/modules","docs/4.x/4.api/5.kit/1.modules",{"title":1773,"path":1774,"stem":1775,"titleTemplate":6},"Runtime Config","/docs/4.x/api/kit/runtime-config","docs/4.x/4.api/5.kit/10.runtime-config",{"title":830,"path":1777,"stem":1778,"titleTemplate":6},"/docs/4.x/api/kit/templates","docs/4.x/4.api/5.kit/10.templates",{"title":1780,"path":1781,"stem":1782,"titleTemplate":6},"Nitro (Kit)","/docs/4.x/api/kit/nitro","docs/4.x/4.api/5.kit/11.nitro",{"title":1784,"path":1785,"stem":1786,"titleTemplate":6},"Resolving","/docs/4.x/api/kit/resolving","docs/4.x/4.api/5.kit/12.resolving",{"title":1788,"path":1789,"stem":1790,"titleTemplate":6},"Logging (Ведение журнала)","/docs/4.x/api/kit/logging","docs/4.x/4.api/5.kit/13.logging",{"title":1792,"path":1793,"stem":1794,"titleTemplate":6},"Builder","/docs/4.x/api/kit/builder","docs/4.x/4.api/5.kit/14.builder",{"title":850,"path":1796,"stem":1797,"titleTemplate":6},"/docs/4.x/api/kit/examples","docs/4.x/4.api/5.kit/15.examples",{"title":84,"path":1799,"stem":1800,"titleTemplate":6},"/docs/4.x/api/kit/layers","docs/4.x/4.api/5.kit/16.layers",{"title":858,"path":1802,"stem":1803,"titleTemplate":6},"/docs/4.x/api/kit/programmatic","docs/4.x/4.api/5.kit/2.programmatic",{"title":862,"path":1805,"stem":1806,"titleTemplate":6},"/docs/4.x/api/kit/compatibility","docs/4.x/4.api/5.kit/3.compatibility",{"title":866,"path":1808,"stem":1809,"titleTemplate":6},"/docs/4.x/api/kit/autoimports","docs/4.x/4.api/5.kit/4.autoimports",{"title":433,"path":1811,"stem":1812,"titleTemplate":6},"/docs/4.x/api/kit/components","docs/4.x/4.api/5.kit/5.components",{"title":873,"path":1814,"stem":1815,"titleTemplate":6},"/docs/4.x/api/kit/context","docs/4.x/4.api/5.kit/6.context",{"title":877,"path":1817,"stem":1818,"titleTemplate":6},"/docs/4.x/api/kit/pages","docs/4.x/4.api/5.kit/7.pages",{"title":1820,"path":1821,"stem":1822,"titleTemplate":6},"Макеты","/docs/4.x/api/kit/layout","docs/4.x/4.api/5.kit/8.layout",{"title":1824,"path":1825,"stem":1826,"titleTemplate":6},"Head","/docs/4.x/api/kit/head","docs/4.x/4.api/5.kit/9.head",{"title":889,"path":1828,"stem":1829,"titleTemplate":6},"/docs/4.x/api/kit/plugins","docs/4.x/4.api/5.kit/9.plugins",{"title":1831,"titleTemplate":1832,"icon":894,"path":1833,"stem":1834,"children":1835,"page":108},"Продвинутое","%s · Продвинутое","/docs/4.x/api/advanced","docs/4.x/4.api/6.advanced",[1836,1839],{"title":406,"path":1837,"stem":1838,"titleTemplate":6},"/docs/4.x/api/advanced/hooks","docs/4.x/4.api/6.advanced/1.hooks",{"title":1840,"path":1841,"stem":1842,"titleTemplate":6},"import.meta","/docs/4.x/api/advanced/import-meta","docs/4.x/4.api/6.advanced/2.import-meta",{"title":906,"path":1844,"stem":1845,"titleTemplate":909,"icon":32},"/docs/4.x/api/nuxt-config","docs/4.x/4.api/6.nuxt-config",{"title":911,"titleTemplate":912,"icon":913,"path":1847,"stem":1848,"children":1849,"page":108},"/docs/4.x/examples","docs/4.x/4.examples",[1850,1853,1872,1885,1916],{"title":918,"path":1851,"stem":1852,"titleTemplate":6},"/docs/4.x/examples/hello-world","docs/4.x/4.examples/0.hello-world",{"title":922,"path":1854,"stem":1855,"children":1856,"page":108},"/docs/4.x/examples/features","docs/4.x/4.examples/1.features",[1857,1860,1863,1866,1869],{"title":260,"path":1858,"stem":1859,"titleTemplate":6},"/docs/4.x/examples/features/auto-imports","docs/4.x/4.examples/1.features/1.auto-imports",{"title":64,"path":1861,"stem":1862,"titleTemplate":6},"/docs/4.x/examples/features/data-fetching","docs/4.x/4.examples/1.features/2.data-fetching",{"title":69,"path":1864,"stem":1865,"titleTemplate":6},"/docs/4.x/examples/features/state-management","docs/4.x/4.examples/1.features/3.state-management",{"title":936,"path":1867,"stem":1868,"titleTemplate":6},"/docs/4.x/examples/features/meta-tags","docs/4.x/4.examples/1.features/4.meta-tags",{"title":940,"path":1870,"stem":1871,"titleTemplate":6},"/docs/4.x/examples/features/layouts","docs/4.x/4.examples/1.features/5.layouts",{"title":944,"path":1873,"stem":1874,"children":1875,"page":108},"/docs/4.x/examples/routing","docs/4.x/4.examples/2.routing",[1876,1879,1882],{"title":949,"path":1877,"stem":1878,"titleTemplate":6},"/docs/4.x/examples/routing/middleware","docs/4.x/4.examples/2.routing/middleware",{"title":877,"path":1880,"stem":1881,"titleTemplate":6},"/docs/4.x/examples/routing/pages","docs/4.x/4.examples/2.routing/pages",{"title":956,"path":1883,"stem":1884,"titleTemplate":6},"/docs/4.x/examples/routing/universal-router","docs/4.x/4.examples/2.routing/universal-router",{"title":893,"path":1886,"stem":1887,"children":1888,"page":108},"/docs/4.x/examples/advanced","docs/4.x/4.examples/4.advanced",[1889,1892,1895,1898,1901,1904,1907,1910,1913],{"title":84,"path":1890,"stem":1891,"titleTemplate":6},"/docs/4.x/examples/advanced/config-extends","docs/4.x/4.examples/4.advanced/config-extends",{"title":74,"path":1893,"stem":1894,"titleTemplate":6},"/docs/4.x/examples/advanced/error-handling","docs/4.x/4.examples/4.advanced/error-handling",{"title":970,"path":1896,"stem":1897,"titleTemplate":6},"/docs/4.x/examples/advanced/jsx","docs/4.x/4.examples/4.advanced/jsx",{"title":974,"path":1899,"stem":1900,"titleTemplate":6},"/docs/4.x/examples/advanced/locale","docs/4.x/4.examples/4.advanced/locale",{"title":978,"path":1902,"stem":1903,"titleTemplate":6},"/docs/4.x/examples/advanced/module-extend-pages","docs/4.x/4.examples/4.advanced/module-extend-pages",{"title":982,"path":1905,"stem":1906,"titleTemplate":6},"/docs/4.x/examples/advanced/teleport","docs/4.x/4.examples/4.advanced/teleport",{"title":99,"path":1908,"stem":1909,"titleTemplate":6},"/docs/4.x/examples/advanced/testing","docs/4.x/4.examples/4.advanced/testing",{"title":989,"path":1911,"stem":1912,"titleTemplate":6},"/docs/4.x/examples/advanced/use-cookie","docs/4.x/4.examples/4.advanced/use-cookie",{"title":993,"path":1914,"stem":1915,"titleTemplate":6},"/docs/4.x/examples/advanced/use-custom-fetch-composable","docs/4.x/4.examples/4.advanced/use-custom-fetch-composable",{"title":997,"path":1917,"stem":1918,"children":1919,"page":108},"/docs/4.x/examples/experimental","docs/4.x/4.examples/7.experimental",[1920],{"title":1002,"path":1921,"stem":1922,"titleTemplate":6},"/docs/4.x/examples/experimental/wasm","docs/4.x/4.examples/7.experimental/wasm",{"title":1006,"titleTemplate":1007,"icon":1008,"path":1924,"stem":1925,"children":1926,"page":108},"/docs/4.x/community","docs/4.x/5.community",[1927,1931,1935,1939,1942,1946],{"title":1928,"path":1929,"stem":1930,"titleTemplate":6,"icon":1016},"Помощь","/docs/4.x/community/getting-help","docs/4.x/5.community/2.getting-help",{"title":1932,"path":1933,"stem":1934,"titleTemplate":6,"icon":1021},"Сообщение о багах","/docs/4.x/community/reporting-bugs","docs/4.x/5.community/3.reporting-bugs",{"title":1936,"path":1937,"stem":1938,"titleTemplate":6,"icon":1026},"Участие в разработке","/docs/4.x/community/contribution","docs/4.x/5.community/4.contribution",{"title":1028,"path":1940,"stem":1941,"titleTemplate":6,"icon":1031},"/docs/4.x/community/framework-contribution","docs/4.x/5.community/5.framework-contribution",{"title":1943,"path":1944,"stem":1945,"titleTemplate":6,"icon":1036},"Дорожная карта","/docs/4.x/community/roadmap","docs/4.x/5.community/6.roadmap",{"title":1038,"path":1947,"stem":1948,"titleTemplate":6,"icon":1041},"/docs/4.x/community/changelog","docs/4.x/5.community/7.changelog",{"title":1950,"titleTemplate":1951,"icon":1045,"path":1952,"stem":1953,"children":1954,"page":108},"Миграция на Nuxt Bridge","Миграция на Nuxt Bridge: %s","/docs/4.x/bridge","docs/4.x/6.bridge",[1955,1958,1961,1965,1969,1972,1975,1978,1981,1985],{"title":1050,"path":1956,"stem":1957,"titleTemplate":6},"/docs/4.x/bridge/overview","docs/4.x/6.bridge/1.overview",{"title":1054,"path":1959,"stem":1960,"titleTemplate":6},"/docs/4.x/bridge/configuration","docs/4.x/6.bridge/10.configuration",{"title":1962,"path":1963,"stem":1964,"titleTemplate":6},"TypeScript (поддержка)","/docs/4.x/bridge/typescript","docs/4.x/6.bridge/2.typescript",{"title":1966,"path":1967,"stem":1968,"titleTemplate":6},"Устаревший Composition API","/docs/4.x/bridge/bridge-composition-api","docs/4.x/6.bridge/3.bridge-composition-api",{"title":1065,"path":1970,"stem":1971,"titleTemplate":6},"/docs/4.x/bridge/plugins-and-middleware","docs/4.x/6.bridge/4.plugins-and-middleware",{"title":1069,"path":1973,"stem":1974,"titleTemplate":6},"/docs/4.x/bridge/nuxt3-compatible-api","docs/4.x/6.bridge/5.nuxt3-compatible-api",{"title":936,"path":1976,"stem":1977,"titleTemplate":6},"/docs/4.x/bridge/meta","docs/4.x/6.bridge/6.meta",{"title":1432,"path":1979,"stem":1980,"titleTemplate":6},"/docs/4.x/bridge/runtime-config","docs/4.x/6.bridge/7.runtime-config",{"title":1982,"path":1983,"stem":1984,"titleTemplate":6},"Nitro (сервер)","/docs/4.x/bridge/nitro","docs/4.x/6.bridge/8.nitro",{"title":1986,"path":1987,"stem":1988,"titleTemplate":6},"Vite (сборщик)","/docs/4.x/bridge/vite","docs/4.x/6.bridge/9.vite",{"title":1086,"titleTemplate":1990,"icon":107,"path":1991,"stem":1992,"children":1993,"page":108},"Migrate to Nuxt 3: %s","/docs/4.x/migration","docs/4.x/7.migration",[1994,1997,2000,2003,2006,2009,2012,2015,2018,2022,2026],{"title":1050,"path":1995,"stem":1996,"titleTemplate":6},"/docs/4.x/migration/overview","docs/4.x/7.migration/1.overview",{"title":1095,"path":1998,"stem":1999,"titleTemplate":6},"/docs/4.x/migration/bundling","docs/4.x/7.migration/10.bundling",{"title":79,"path":2001,"stem":2002,"titleTemplate":6},"/docs/4.x/migration/server","docs/4.x/7.migration/11.server",{"title":1054,"path":2004,"stem":2005,"titleTemplate":6},"/docs/4.x/migration/configuration","docs/4.x/7.migration/2.configuration",{"title":268,"path":2007,"stem":2008,"titleTemplate":6},"/docs/4.x/migration/module-authors","docs/4.x/7.migration/20.module-authors",{"title":866,"path":2010,"stem":2011,"titleTemplate":6},"/docs/4.x/migration/auto-imports","docs/4.x/7.migration/3.auto-imports",{"title":936,"path":2013,"stem":2014,"titleTemplate":6},"/docs/4.x/migration/meta","docs/4.x/7.migration/4.meta",{"title":1065,"path":2016,"stem":2017,"titleTemplate":6},"/docs/4.x/migration/plugins-and-middleware","docs/4.x/7.migration/5.plugins-and-middleware",{"title":2019,"path":2020,"stem":2021,"titleTemplate":6},"Страницы и макеты","/docs/4.x/migration/pages-and-layouts","docs/4.x/7.migration/6.pages-and-layouts",{"title":2023,"path":2024,"stem":2025,"titleTemplate":6},"Опции компонентов","/docs/4.x/migration/component-options","docs/4.x/7.migration/7.component-options",{"title":1432,"path":2027,"stem":2028,"titleTemplate":6},"/docs/4.x/migration/runtime-config","docs/4.x/7.migration/8.runtime-config",{"title":5,"titleTemplate":6,"icon":7,"path":2030,"stem":2031,"children":2032,"page":108},"/docs/5.x","docs/5.x",[2033,2091,2181,2308,2678,2755,2777,2811],{"title":1133,"titleTemplate":1134,"icon":14,"path":2034,"stem":2035,"children":2036,"page":108},"/docs/5.x/getting-started","docs/5.x/1.getting-started",[2037,2040,2043,2046,2049,2052,2055,2058,2061,2064,2067,2070,2073,2076,2079,2082,2085,2088],{"title":19,"path":2038,"stem":2039,"titleTemplate":6,"icon":22},"/docs/5.x/getting-started/introduction","docs/5.x/1.getting-started/01.introduction",{"title":24,"path":2041,"stem":2042,"titleTemplate":6,"icon":27},"/docs/5.x/getting-started/installation","docs/5.x/1.getting-started/02.installation",{"title":1054,"path":2044,"stem":2045,"titleTemplate":6,"icon":32},"/docs/5.x/getting-started/configuration","docs/5.x/1.getting-started/03.configuration",{"title":1148,"path":2047,"stem":2048,"titleTemplate":6,"icon":37},"/docs/5.x/getting-started/views","docs/5.x/1.getting-started/04.views",{"title":1152,"path":2050,"stem":2051,"titleTemplate":6,"icon":42},"/docs/5.x/getting-started/assets","docs/5.x/1.getting-started/05.assets",{"title":1156,"path":2053,"stem":2054,"titleTemplate":6,"icon":47},"/docs/5.x/getting-started/styling","docs/5.x/1.getting-started/06.styling",{"title":49,"path":2056,"stem":2057,"titleTemplate":6,"icon":52},"/docs/5.x/getting-started/routing","docs/5.x/1.getting-started/07.routing",{"title":1163,"path":2059,"stem":2060,"titleTemplate":6,"icon":57},"/docs/5.x/getting-started/seo-meta","docs/5.x/1.getting-started/08.seo-meta",{"title":59,"path":2062,"stem":2063,"titleTemplate":6,"icon":62},"/docs/5.x/getting-started/transitions","docs/5.x/1.getting-started/09.transitions",{"title":64,"path":2065,"stem":2066,"titleTemplate":6,"icon":67},"/docs/5.x/getting-started/data-fetching","docs/5.x/1.getting-started/10.data-fetching",{"title":69,"path":2068,"stem":2069,"titleTemplate":6,"icon":72},"/docs/5.x/getting-started/state-management","docs/5.x/1.getting-started/11.state-management",{"title":74,"path":2071,"stem":2072,"titleTemplate":6,"icon":77},"/docs/5.x/getting-started/error-handling","docs/5.x/1.getting-started/12.error-handling",{"title":79,"path":2074,"stem":2075,"titleTemplate":6,"icon":82},"/docs/5.x/getting-started/server","docs/5.x/1.getting-started/13.server",{"title":1182,"path":2077,"stem":2078,"titleTemplate":6,"icon":87},"/docs/5.x/getting-started/layers","docs/5.x/1.getting-started/14.layers",{"title":89,"path":2080,"stem":2081,"titleTemplate":6,"icon":92},"/docs/5.x/getting-started/prerendering","docs/5.x/1.getting-started/15.prerendering",{"title":94,"path":2083,"stem":2084,"titleTemplate":6,"icon":97},"/docs/5.x/getting-started/deployment","docs/5.x/1.getting-started/16.deployment",{"title":99,"path":2086,"stem":2087,"titleTemplate":6,"icon":102},"/docs/5.x/getting-started/testing","docs/5.x/1.getting-started/17.testing",{"title":104,"path":2089,"stem":2090,"titleTemplate":6,"icon":107},"/docs/5.x/getting-started/upgrade","docs/5.x/1.getting-started/18.upgrade",{"title":1198,"titleTemplate":1199,"icon":112,"path":2092,"stem":2093,"children":2094,"page":108},"/docs/5.x/directory-structure","docs/5.x/2.directory-structure",[2095,2098,2101,2139,2142,2145,2148,2151,2154,2157,2160,2163,2166,2169,2172,2175,2178],{"title":117,"path":2096,"stem":2097,"titleTemplate":6,"icon":1206},"/docs/5.x/directory-structure/nuxt","docs/5.x/2.directory-structure/0.nuxt",{"title":122,"path":2099,"stem":2100,"titleTemplate":6,"icon":1210},"/docs/5.x/directory-structure/output","docs/5.x/2.directory-structure/0.output",{"title":1212,"titleTemplate":1199,"head":2102,"defaultOpen":1215,"icon":1216,"path":2103,"stem":2104,"children":2105,"page":108},{"title":1214},"/docs/5.x/directory-structure/app","docs/5.x/2.directory-structure/1.app",[2106,2109,2112,2115,2118,2121,2124,2127,2130,2133,2136],{"title":1221,"path":2107,"stem":2108,"titleTemplate":6,"icon":1224},"/docs/5.x/directory-structure/app/assets","docs/5.x/2.directory-structure/1.app/1.assets",{"title":1226,"path":2110,"stem":2111,"titleTemplate":6,"icon":133},"/docs/5.x/directory-structure/app/components","docs/5.x/2.directory-structure/1.app/1.components",{"title":135,"path":2113,"stem":2114,"titleTemplate":6,"icon":1232},"/docs/5.x/directory-structure/app/composables","docs/5.x/2.directory-structure/1.app/1.composables",{"title":1234,"path":2116,"stem":2117,"titleTemplate":6,"icon":151},"/docs/5.x/directory-structure/app/layouts","docs/5.x/2.directory-structure/1.app/1.layouts",{"title":1238,"path":2119,"stem":2120,"titleTemplate":6,"icon":156},"/docs/5.x/directory-structure/app/middleware","docs/5.x/2.directory-structure/1.app/1.middleware",{"title":1242,"path":2122,"stem":2123,"titleTemplate":6,"icon":151},"/docs/5.x/directory-structure/app/pages","docs/5.x/2.directory-structure/1.app/1.pages",{"title":1246,"path":2125,"stem":2126,"titleTemplate":6,"icon":173},"/docs/5.x/directory-structure/app/plugins","docs/5.x/2.directory-structure/1.app/1.plugins",{"title":188,"path":2128,"stem":2129,"titleTemplate":6,"icon":1252},"/docs/5.x/directory-structure/app/utils","docs/5.x/2.directory-structure/1.app/1.utils",{"title":210,"path":2131,"stem":2132,"titleTemplate":6,"icon":1256},"/docs/5.x/directory-structure/app/app","docs/5.x/2.directory-structure/1.app/3.app",{"title":214,"path":2134,"stem":2135,"titleTemplate":6,"icon":1260},"/docs/5.x/directory-structure/app/app-config","docs/5.x/2.directory-structure/1.app/3.app-config",{"title":218,"path":2137,"stem":2138,"titleTemplate":6,"icon":1256},"/docs/5.x/directory-structure/app/error","docs/5.x/2.directory-structure/1.app/3.error",{"title":139,"path":2140,"stem":2141,"titleTemplate":6,"icon":1267},"/docs/5.x/directory-structure/content","docs/5.x/2.directory-structure/1.content",{"title":143,"path":2143,"stem":2144,"titleTemplate":6,"icon":146},"/docs/5.x/directory-structure/layers","docs/5.x/2.directory-structure/1.layers",{"title":158,"path":2146,"stem":2147,"titleTemplate":6,"icon":146},"/docs/5.x/directory-structure/modules","docs/5.x/2.directory-structure/1.modules",{"title":162,"path":2149,"stem":2150,"titleTemplate":6,"icon":1277},"/docs/5.x/directory-structure/node_modules","docs/5.x/2.directory-structure/1.node_modules",{"title":1279,"path":2152,"stem":2153,"titleTemplate":6,"icon":1282},"/docs/5.x/directory-structure/public","docs/5.x/2.directory-structure/1.public",{"title":179,"path":2155,"stem":2156,"titleTemplate":6,"icon":182},"/docs/5.x/directory-structure/server","docs/5.x/2.directory-structure/1.server",{"title":184,"path":2158,"stem":2159,"titleTemplate":6,"icon":1289},"/docs/5.x/directory-structure/shared","docs/5.x/2.directory-structure/1.shared",{"title":192,"path":2161,"stem":2162,"titleTemplate":6,"icon":1293},"/docs/5.x/directory-structure/env","docs/5.x/2.directory-structure/2.env",{"title":197,"path":2164,"stem":2165,"titleTemplate":6,"icon":1297},"/docs/5.x/directory-structure/gitignore","docs/5.x/2.directory-structure/2.gitignore",{"title":201,"path":2167,"stem":2168,"titleTemplate":6,"icon":204},"/docs/5.x/directory-structure/nuxtignore","docs/5.x/2.directory-structure/2.nuxtignore",{"title":206,"path":2170,"stem":2171,"titleTemplate":6,"icon":204},"/docs/5.x/directory-structure/nuxtrc","docs/5.x/2.directory-structure/2.nuxtrc",{"title":222,"path":2173,"stem":2174,"titleTemplate":6,"icon":204},"/docs/5.x/directory-structure/nuxt-config","docs/5.x/2.directory-structure/3.nuxt-config",{"title":226,"path":2176,"stem":2177,"titleTemplate":6,"icon":1310},"/docs/5.x/directory-structure/package","docs/5.x/2.directory-structure/3.package",{"title":230,"path":2179,"stem":2180,"titleTemplate":6,"icon":233},"/docs/5.x/directory-structure/tsconfig","docs/5.x/2.directory-structure/3.tsconfig",{"title":235,"titleTemplate":6,"icon":236,"path":2182,"stem":2183,"children":2184,"page":108},"/docs/5.x/guide","docs/5.x/3.guide",[2185,2210,2223,2233,2258,2274],{"title":241,"titleTemplate":242,"icon":243,"path":2186,"stem":2187,"children":2188,"page":108},"/docs/5.x/guide/concepts","docs/5.x/3.guide/1.concepts",[2189,2192,2195,2198,2201,2204,2207],{"title":248,"path":2190,"stem":2191,"titleTemplate":6},"/docs/5.x/guide/concepts/rendering","docs/5.x/3.guide/1.concepts/1.rendering",{"title":256,"path":2193,"stem":2194,"titleTemplate":6},"/docs/5.x/guide/concepts/nuxt-lifecycle","docs/5.x/3.guide/1.concepts/2.nuxt-lifecycle",{"title":866,"path":2196,"stem":2197,"titleTemplate":6},"/docs/5.x/guide/concepts/auto-imports","docs/5.x/3.guide/1.concepts/3.auto-imports",{"title":264,"path":2199,"stem":2200,"titleTemplate":6},"/docs/5.x/guide/concepts/server-engine","docs/5.x/3.guide/1.concepts/4.server-engine",{"title":268,"path":2202,"stem":2203,"titleTemplate":6},"/docs/5.x/guide/concepts/modules","docs/5.x/3.guide/1.concepts/5.modules",{"title":276,"path":2205,"stem":2206,"titleTemplate":6},"/docs/5.x/guide/concepts/typescript","docs/5.x/3.guide/1.concepts/8.typescript",{"title":280,"path":2208,"stem":2209,"titleTemplate":6},"/docs/5.x/guide/concepts/code-style","docs/5.x/3.guide/1.concepts/9.code-style",{"title":284,"titleTemplate":285,"icon":286,"path":2211,"stem":2212,"children":2213,"page":108},"/docs/5.x/guide/best-practices","docs/5.x/3.guide/2.best-practices",[2214,2217,2220],{"title":1348,"path":2215,"stem":2216,"titleTemplate":6},"/docs/5.x/guide/best-practices/hydration","docs/5.x/3.guide/2.best-practices/hydration",{"title":295,"path":2218,"stem":2219,"titleTemplate":6},"/docs/5.x/guide/best-practices/performance","docs/5.x/3.guide/2.best-practices/performance",{"title":299,"path":2221,"stem":2222,"titleTemplate":6},"/docs/5.x/guide/best-practices/plugins","docs/5.x/3.guide/2.best-practices/plugins",{"title":303,"titleTemplate":304,"icon":305,"path":2224,"stem":2225,"children":2226,"page":108},"/docs/5.x/guide/ai","docs/5.x/3.guide/3.ai",[2227,2230],{"title":1362,"path":2228,"stem":2229,"titleTemplate":6},"/docs/5.x/guide/ai/mcp","docs/5.x/3.guide/3.ai/1.mcp",{"title":314,"path":2231,"stem":2232,"titleTemplate":6},"/docs/5.x/guide/ai/llms-txt","docs/5.x/3.guide/3.ai/2.llms-txt",{"title":318,"titleTemplate":1369,"icon":320,"path":2234,"stem":2235,"children":2236,"page":108},"/docs/5.x/guide/modules","docs/5.x/3.guide/4.modules",[2237,2240,2243,2246,2249,2252,2255],{"title":325,"path":2238,"stem":2239,"titleTemplate":6},"/docs/5.x/guide/modules/getting-started","docs/5.x/3.guide/4.modules/1.getting-started",{"title":329,"path":2241,"stem":2242,"titleTemplate":6},"/docs/5.x/guide/modules/module-anatomy","docs/5.x/3.guide/4.modules/2.module-anatomy",{"title":1380,"path":2244,"stem":2245,"titleTemplate":6},"/docs/5.x/guide/modules/recipes-basics","docs/5.x/3.guide/4.modules/3.recipes-basics",{"title":1384,"path":2247,"stem":2248,"titleTemplate":6},"/docs/5.x/guide/modules/recipes-advanced","docs/5.x/3.guide/4.modules/4.recipes-advanced",{"title":341,"path":2250,"stem":2251,"titleTemplate":6},"/docs/5.x/guide/modules/testing","docs/5.x/3.guide/4.modules/5.testing",{"title":284,"path":2253,"stem":2254,"titleTemplate":6},"/docs/5.x/guide/modules/best-practices","docs/5.x/3.guide/4.modules/6.best-practices",{"title":348,"path":2256,"stem":2257,"titleTemplate":6},"/docs/5.x/guide/modules/ecosystem","docs/5.x/3.guide/4.modules/7.ecosystem",{"title":352,"titleTemplate":353,"icon":354,"path":2259,"stem":2260,"children":2261,"page":108},"/docs/5.x/guide/recipes","docs/5.x/3.guide/5.recipes",[2262,2265,2268,2271],{"title":1401,"path":2263,"stem":2264,"titleTemplate":6},"/docs/5.x/guide/recipes/custom-routing","docs/5.x/3.guide/5.recipes/1.custom-routing",{"title":363,"path":2266,"stem":2267,"titleTemplate":6},"/docs/5.x/guide/recipes/vite-plugin","docs/5.x/3.guide/5.recipes/2.vite-plugin",{"title":1408,"path":2269,"stem":2270,"titleTemplate":6},"/docs/5.x/guide/recipes/custom-usefetch","docs/5.x/3.guide/5.recipes/3.custom-usefetch",{"title":371,"path":2272,"stem":2273,"titleTemplate":6},"/docs/5.x/guide/recipes/sessions-and-authentication","docs/5.x/3.guide/5.recipes/4.sessions-and-authentication",{"title":1415,"titleTemplate":1416,"icon":377,"path":2275,"stem":2276,"children":2277,"page":108},"/docs/5.x/guide/going-further","docs/5.x/3.guide/6.going-further",[2278,2281,2284,2287,2290,2293,2296,2299,2302,2305],{"title":1421,"path":2279,"stem":2280,"titleTemplate":6},"/docs/5.x/guide/going-further/events","docs/5.x/3.guide/6.going-further/1.events",{"title":386,"path":2282,"stem":2283,"titleTemplate":6},"/docs/5.x/guide/going-further/experimental-features","docs/5.x/3.guide/6.going-further/1.experimental-features",{"title":1428,"path":2285,"stem":2286,"titleTemplate":6},"/docs/5.x/guide/going-further/features","docs/5.x/3.guide/6.going-further/1.features",{"title":1432,"path":2288,"stem":2289,"titleTemplate":6},"/docs/5.x/guide/going-further/runtime-config","docs/5.x/3.guide/6.going-further/10.runtime-config",{"title":1436,"path":2291,"stem":2292,"titleTemplate":6},"/docs/5.x/guide/going-further/nightly-release-channel","docs/5.x/3.guide/6.going-further/11.nightly-release-channel",{"title":406,"path":2294,"stem":2295,"titleTemplate":6},"/docs/5.x/guide/going-further/hooks","docs/5.x/3.guide/6.going-further/2.hooks",{"title":410,"path":2297,"stem":2298,"titleTemplate":6},"/docs/5.x/guide/going-further/kit","docs/5.x/3.guide/6.going-further/4.kit",{"title":414,"path":2300,"stem":2301,"titleTemplate":6},"/docs/5.x/guide/going-further/nuxt-app","docs/5.x/3.guide/6.going-further/6.nuxt-app",{"title":1449,"path":2303,"stem":2304,"titleTemplate":6},"/docs/5.x/guide/going-further/layers","docs/5.x/3.guide/6.going-further/7.layers",{"title":422,"path":2306,"stem":2307,"titleTemplate":6},"/docs/5.x/guide/going-further/debugging","docs/5.x/3.guide/6.going-further/9.debugging",{"title":426,"titleTemplate":1456,"icon":428,"path":2309,"stem":2310,"children":2311,"page":108},"/docs/5.x/api","docs/5.x/4.api",[2312,2364,2464,2555,2607,2665,2675],{"title":433,"titleTemplate":434,"icon":320,"path":2313,"stem":2314,"children":2315,"page":108},"/docs/5.x/api/components","docs/5.x/4.api/1.components",[2316,2319,2322,2325,2328,2331,2334,2337,2340,2343,2346,2349,2352,2355,2358,2361],{"title":439,"path":2317,"stem":2318,"titleTemplate":6},"/docs/5.x/api/components/client-only","docs/5.x/4.api/1.components/1.client-only",{"title":443,"path":2320,"stem":2321,"titleTemplate":6},"/docs/5.x/api/components/dev-only","docs/5.x/4.api/1.components/1.dev-only",{"title":447,"path":2323,"stem":2324,"titleTemplate":6},"/docs/5.x/api/components/nuxt-client-fallback","docs/5.x/4.api/1.components/1.nuxt-client-fallback",{"title":451,"path":2326,"stem":2327,"titleTemplate":6},"/docs/5.x/api/components/nuxt-picture","docs/5.x/4.api/1.components/10.nuxt-picture",{"title":455,"path":2329,"stem":2330,"titleTemplate":6},"/docs/5.x/api/components/teleports","docs/5.x/4.api/1.components/11.teleports",{"title":459,"path":2332,"stem":2333,"titleTemplate":6},"/docs/5.x/api/components/nuxt-route-announcer","docs/5.x/4.api/1.components/12.nuxt-route-announcer",{"title":464,"path":2335,"stem":2336,"titleTemplate":6},"/docs/5.x/api/components/nuxt-time","docs/5.x/4.api/1.components/13.nuxt-time",{"title":1486,"path":2338,"stem":2339,"titleTemplate":6},"/docs/5.x/api/components/nuxt-announcer","docs/5.x/4.api/1.components/14.nuxt-announcer",{"title":468,"path":2341,"stem":2342,"titleTemplate":6},"/docs/5.x/api/components/nuxt-page","docs/5.x/4.api/1.components/2.nuxt-page",{"title":472,"path":2344,"stem":2345,"titleTemplate":6},"/docs/5.x/api/components/nuxt-layout","docs/5.x/4.api/1.components/3.nuxt-layout",{"title":476,"path":2347,"stem":2348,"titleTemplate":6},"/docs/5.x/api/components/nuxt-link","docs/5.x/4.api/1.components/4.nuxt-link",{"title":480,"path":2350,"stem":2351,"titleTemplate":6},"/docs/5.x/api/components/nuxt-loading-indicator","docs/5.x/4.api/1.components/5.nuxt-loading-indicator",{"title":484,"path":2353,"stem":2354,"titleTemplate":6},"/docs/5.x/api/components/nuxt-error-boundary","docs/5.x/4.api/1.components/6.nuxt-error-boundary",{"title":488,"path":2356,"stem":2357,"titleTemplate":6},"/docs/5.x/api/components/nuxt-welcome","docs/5.x/4.api/1.components/7.nuxt-welcome",{"title":492,"path":2359,"stem":2360,"titleTemplate":6},"/docs/5.x/api/components/nuxt-island","docs/5.x/4.api/1.components/8.nuxt-island",{"title":496,"path":2362,"stem":2363,"titleTemplate":6},"/docs/5.x/api/components/nuxt-img","docs/5.x/4.api/1.components/9.nuxt-img",{"title":500,"titleTemplate":501,"icon":502,"path":2365,"stem":2366,"children":2367,"page":108},"/docs/5.x/api/composables","docs/5.x/4.api/2.composables",[2368,2371,2374,2377,2380,2383,2386,2389,2392,2395,2398,2401,2404,2407,2410,2413,2416,2419,2422,2425,2428,2431,2434,2437,2440,2443,2446,2449,2452,2455,2458,2461],{"title":1518,"path":2369,"stem":2370,"titleTemplate":6},"/docs/5.x/api/composables/create-use-async-data","docs/5.x/4.api/2.composables/create-use-async-data",{"title":1522,"path":2372,"stem":2373,"titleTemplate":6},"/docs/5.x/api/composables/create-use-fetch","docs/5.x/4.api/2.composables/create-use-fetch",{"title":507,"path":2375,"stem":2376,"titleTemplate":6},"/docs/5.x/api/composables/on-prehydrate","docs/5.x/4.api/2.composables/on-prehydrate",{"title":1529,"path":2378,"stem":2379,"titleTemplate":6},"/docs/5.x/api/composables/use-announcer","docs/5.x/4.api/2.composables/use-announcer",{"title":511,"path":2381,"stem":2382,"titleTemplate":6},"/docs/5.x/api/composables/use-app-config","docs/5.x/4.api/2.composables/use-app-config",{"title":515,"path":2384,"stem":2385,"titleTemplate":6},"/docs/5.x/api/composables/use-async-data","docs/5.x/4.api/2.composables/use-async-data",{"title":519,"path":2387,"stem":2388,"titleTemplate":6},"/docs/5.x/api/composables/use-cookie","docs/5.x/4.api/2.composables/use-cookie",{"title":523,"path":2390,"stem":2391,"titleTemplate":6},"/docs/5.x/api/composables/use-error","docs/5.x/4.api/2.composables/use-error",{"title":527,"path":2393,"stem":2394,"titleTemplate":6},"/docs/5.x/api/composables/use-fetch","docs/5.x/4.api/2.composables/use-fetch",{"title":531,"path":2396,"stem":2397,"titleTemplate":6},"/docs/5.x/api/composables/use-head","docs/5.x/4.api/2.composables/use-head",{"title":535,"path":2399,"stem":2400,"titleTemplate":6},"/docs/5.x/api/composables/use-head-safe","docs/5.x/4.api/2.composables/use-head-safe",{"title":539,"path":2402,"stem":2403,"titleTemplate":6},"/docs/5.x/api/composables/use-hydration","docs/5.x/4.api/2.composables/use-hydration",{"title":543,"path":2405,"stem":2406,"titleTemplate":6},"/docs/5.x/api/composables/use-lazy-async-data","docs/5.x/4.api/2.composables/use-lazy-async-data",{"title":547,"path":2408,"stem":2409,"titleTemplate":6},"/docs/5.x/api/composables/use-lazy-fetch","docs/5.x/4.api/2.composables/use-lazy-fetch",{"title":551,"path":2411,"stem":2412,"titleTemplate":6},"/docs/5.x/api/composables/use-loading-indicator","docs/5.x/4.api/2.composables/use-loading-indicator",{"title":555,"path":2414,"stem":2415,"titleTemplate":6},"/docs/5.x/api/composables/use-nuxt-app","docs/5.x/4.api/2.composables/use-nuxt-app",{"title":559,"path":2417,"stem":2418,"titleTemplate":6},"/docs/5.x/api/composables/use-nuxt-data","docs/5.x/4.api/2.composables/use-nuxt-data",{"title":563,"path":2420,"stem":2421,"titleTemplate":6},"/docs/5.x/api/composables/use-preview-mode","docs/5.x/4.api/2.composables/use-preview-mode",{"title":567,"path":2423,"stem":2424,"titleTemplate":6},"/docs/5.x/api/composables/use-request-event","docs/5.x/4.api/2.composables/use-request-event",{"title":571,"path":2426,"stem":2427,"titleTemplate":6},"/docs/5.x/api/composables/use-request-fetch","docs/5.x/4.api/2.composables/use-request-fetch",{"title":575,"path":2429,"stem":2430,"titleTemplate":6},"/docs/5.x/api/composables/use-request-header","docs/5.x/4.api/2.composables/use-request-header",{"title":579,"path":2432,"stem":2433,"titleTemplate":6},"/docs/5.x/api/composables/use-request-headers","docs/5.x/4.api/2.composables/use-request-headers",{"title":583,"path":2435,"stem":2436,"titleTemplate":6},"/docs/5.x/api/composables/use-request-url","docs/5.x/4.api/2.composables/use-request-url",{"title":587,"path":2438,"stem":2439,"titleTemplate":6},"/docs/5.x/api/composables/use-response-header","docs/5.x/4.api/2.composables/use-response-header",{"title":591,"path":2441,"stem":2442,"titleTemplate":6},"/docs/5.x/api/composables/use-route","docs/5.x/4.api/2.composables/use-route",{"title":595,"path":2444,"stem":2445,"titleTemplate":6},"/docs/5.x/api/composables/use-route-announcer","docs/5.x/4.api/2.composables/use-route-announcer",{"title":599,"path":2447,"stem":2448,"titleTemplate":6},"/docs/5.x/api/composables/use-router","docs/5.x/4.api/2.composables/use-router",{"title":603,"path":2450,"stem":2451,"titleTemplate":6},"/docs/5.x/api/composables/use-runtime-config","docs/5.x/4.api/2.composables/use-runtime-config",{"title":607,"path":2453,"stem":2454,"titleTemplate":6},"/docs/5.x/api/composables/use-runtime-hook","docs/5.x/4.api/2.composables/use-runtime-hook",{"title":611,"path":2456,"stem":2457,"titleTemplate":6},"/docs/5.x/api/composables/use-seo-meta","docs/5.x/4.api/2.composables/use-seo-meta",{"title":615,"path":2459,"stem":2460,"titleTemplate":6},"/docs/5.x/api/composables/use-server-seo-meta","docs/5.x/4.api/2.composables/use-server-seo-meta",{"title":619,"path":2462,"stem":2463,"titleTemplate":6},"/docs/5.x/api/composables/use-state","docs/5.x/4.api/2.composables/use-state",{"title":623,"titleTemplate":624,"icon":625,"path":2465,"stem":2466,"children":2467,"page":108},"/docs/5.x/api/utils","docs/5.x/4.api/3.utils",[2468,2471,2474,2477,2480,2483,2486,2489,2492,2495,2498,2501,2504,2507,2510,2513,2516,2519,2522,2525,2528,2531,2534,2537,2540,2543,2546,2549,2552],{"title":630,"path":2469,"stem":2470,"titleTemplate":6},"/docs/5.x/api/utils/dollarfetch","docs/5.x/4.api/3.utils/$fetch",{"title":634,"path":2472,"stem":2473,"titleTemplate":6},"/docs/5.x/api/utils/abort-navigation","docs/5.x/4.api/3.utils/abort-navigation",{"title":638,"path":2475,"stem":2476,"titleTemplate":6},"/docs/5.x/api/utils/add-route-middleware","docs/5.x/4.api/3.utils/add-route-middleware",{"title":642,"path":2478,"stem":2479,"titleTemplate":6},"/docs/5.x/api/utils/call-once","docs/5.x/4.api/3.utils/call-once",{"title":646,"path":2481,"stem":2482,"titleTemplate":6},"/docs/5.x/api/utils/clear-error","docs/5.x/4.api/3.utils/clear-error",{"title":650,"path":2484,"stem":2485,"titleTemplate":6},"/docs/5.x/api/utils/clear-nuxt-data","docs/5.x/4.api/3.utils/clear-nuxt-data",{"title":654,"path":2487,"stem":2488,"titleTemplate":6},"/docs/5.x/api/utils/clear-nuxt-state","docs/5.x/4.api/3.utils/clear-nuxt-state",{"title":658,"path":2490,"stem":2491,"titleTemplate":6},"/docs/5.x/api/utils/create-error","docs/5.x/4.api/3.utils/create-error",{"title":662,"path":2493,"stem":2494,"titleTemplate":6},"/docs/5.x/api/utils/define-lazy-hydration-component","docs/5.x/4.api/3.utils/define-lazy-hydration-component",{"title":666,"path":2496,"stem":2497,"titleTemplate":6},"/docs/5.x/api/utils/define-nuxt-component","docs/5.x/4.api/3.utils/define-nuxt-component",{"title":670,"path":2499,"stem":2500,"titleTemplate":6},"/docs/5.x/api/utils/define-nuxt-plugin","docs/5.x/4.api/3.utils/define-nuxt-plugin",{"title":674,"path":2502,"stem":2503,"titleTemplate":6},"/docs/5.x/api/utils/define-nuxt-route-middleware","docs/5.x/4.api/3.utils/define-nuxt-route-middleware",{"title":678,"path":2505,"stem":2506,"titleTemplate":6},"/docs/5.x/api/utils/define-page-meta","docs/5.x/4.api/3.utils/define-page-meta",{"title":682,"path":2508,"stem":2509,"titleTemplate":6},"/docs/5.x/api/utils/define-route-rules","docs/5.x/4.api/3.utils/define-route-rules",{"title":686,"path":2511,"stem":2512,"titleTemplate":6},"/docs/5.x/api/utils/navigate-to","docs/5.x/4.api/3.utils/navigate-to",{"title":690,"path":2514,"stem":2515,"titleTemplate":6},"/docs/5.x/api/utils/on-before-route-leave","docs/5.x/4.api/3.utils/on-before-route-leave",{"title":694,"path":2517,"stem":2518,"titleTemplate":6},"/docs/5.x/api/utils/on-before-route-update","docs/5.x/4.api/3.utils/on-before-route-update",{"title":698,"path":2520,"stem":2521,"titleTemplate":6},"/docs/5.x/api/utils/on-nuxt-ready","docs/5.x/4.api/3.utils/on-nuxt-ready",{"title":702,"path":2523,"stem":2524,"titleTemplate":6},"/docs/5.x/api/utils/prefetch-components","docs/5.x/4.api/3.utils/prefetch-components",{"title":706,"path":2526,"stem":2527,"titleTemplate":6},"/docs/5.x/api/utils/preload-components","docs/5.x/4.api/3.utils/preload-components",{"title":710,"path":2529,"stem":2530,"titleTemplate":6},"/docs/5.x/api/utils/preload-route-components","docs/5.x/4.api/3.utils/preload-route-components",{"title":714,"path":2532,"stem":2533,"titleTemplate":6},"/docs/5.x/api/utils/prerender-routes","docs/5.x/4.api/3.utils/prerender-routes",{"title":718,"path":2535,"stem":2536,"titleTemplate":6},"/docs/5.x/api/utils/refresh-cookie","docs/5.x/4.api/3.utils/refresh-cookie",{"title":722,"path":2538,"stem":2539,"titleTemplate":6},"/docs/5.x/api/utils/refresh-nuxt-data","docs/5.x/4.api/3.utils/refresh-nuxt-data",{"title":726,"path":2541,"stem":2542,"titleTemplate":6},"/docs/5.x/api/utils/reload-nuxt-app","docs/5.x/4.api/3.utils/reload-nuxt-app",{"title":730,"path":2544,"stem":2545,"titleTemplate":6},"/docs/5.x/api/utils/set-page-layout","docs/5.x/4.api/3.utils/set-page-layout",{"title":734,"path":2547,"stem":2548,"titleTemplate":6},"/docs/5.x/api/utils/set-response-status","docs/5.x/4.api/3.utils/set-response-status",{"title":738,"path":2550,"stem":2551,"titleTemplate":6},"/docs/5.x/api/utils/show-error","docs/5.x/4.api/3.utils/show-error",{"title":742,"path":2553,"stem":2554,"titleTemplate":6},"/docs/5.x/api/utils/update-app-config","docs/5.x/4.api/3.utils/update-app-config",{"title":746,"titleTemplate":6,"icon":748,"path":2556,"stem":2557,"children":2558,"page":108},"/docs/5.x/api/commands","docs/5.x/4.api/4.commands",[2559,2562,2565,2568,2571,2574,2577,2580,2583,2586,2589,2592,2595,2598,2601,2604],{"title":753,"path":2560,"stem":2561,"titleTemplate":6},"/docs/5.x/api/commands/add","docs/5.x/4.api/4.commands/add",{"title":757,"path":2563,"stem":2564,"titleTemplate":6},"/docs/5.x/api/commands/analyze","docs/5.x/4.api/4.commands/analyze",{"title":761,"path":2566,"stem":2567,"titleTemplate":6},"/docs/5.x/api/commands/build","docs/5.x/4.api/4.commands/build",{"title":765,"path":2569,"stem":2570,"titleTemplate":6},"/docs/5.x/api/commands/build-module","docs/5.x/4.api/4.commands/build-module",{"title":769,"path":2572,"stem":2573,"titleTemplate":6},"/docs/5.x/api/commands/cleanup","docs/5.x/4.api/4.commands/cleanup",{"title":773,"path":2575,"stem":2576,"titleTemplate":6},"/docs/5.x/api/commands/dev","docs/5.x/4.api/4.commands/dev",{"title":1730,"path":2578,"stem":2579,"titleTemplate":6},"/docs/5.x/api/commands/devtools","docs/5.x/4.api/4.commands/devtools",{"title":1734,"path":2581,"stem":2582,"titleTemplate":6},"/docs/5.x/api/commands/generate","docs/5.x/4.api/4.commands/generate",{"title":785,"path":2584,"stem":2585,"titleTemplate":6},"/docs/5.x/api/commands/info","docs/5.x/4.api/4.commands/info",{"title":789,"path":2587,"stem":2588,"titleTemplate":6},"/docs/5.x/api/commands/init","docs/5.x/4.api/4.commands/init",{"title":793,"path":2590,"stem":2591,"titleTemplate":6},"/docs/5.x/api/commands/module","docs/5.x/4.api/4.commands/module",{"title":1747,"path":2593,"stem":2594,"titleTemplate":6},"/docs/5.x/api/commands/prepare","docs/5.x/4.api/4.commands/prepare",{"title":1751,"path":2596,"stem":2597,"titleTemplate":6},"/docs/5.x/api/commands/preview","docs/5.x/4.api/4.commands/preview",{"title":805,"path":2599,"stem":2600,"titleTemplate":6},"/docs/5.x/api/commands/test","docs/5.x/4.api/4.commands/test",{"title":1758,"path":2602,"stem":2603,"titleTemplate":6},"/docs/5.x/api/commands/typecheck","docs/5.x/4.api/4.commands/typecheck",{"title":813,"path":2605,"stem":2606,"titleTemplate":6},"/docs/5.x/api/commands/upgrade","docs/5.x/4.api/4.commands/upgrade",{"title":1765,"titleTemplate":817,"icon":818,"path":2608,"stem":2609,"children":2610,"page":108},"/docs/5.x/api/kit","docs/5.x/4.api/5.kit",[2611,2614,2617,2620,2623,2626,2629,2632,2635,2638,2641,2644,2647,2650,2653,2656,2659,2662],{"title":268,"path":2612,"stem":2613,"titleTemplate":6},"/docs/5.x/api/kit/modules","docs/5.x/4.api/5.kit/1.modules",{"title":1773,"path":2615,"stem":2616,"titleTemplate":6},"/docs/5.x/api/kit/runtime-config","docs/5.x/4.api/5.kit/10.runtime-config",{"title":830,"path":2618,"stem":2619,"titleTemplate":6},"/docs/5.x/api/kit/templates","docs/5.x/4.api/5.kit/10.templates",{"title":1780,"path":2621,"stem":2622,"titleTemplate":6},"/docs/5.x/api/kit/nitro","docs/5.x/4.api/5.kit/11.nitro",{"title":1784,"path":2624,"stem":2625,"titleTemplate":6},"/docs/5.x/api/kit/resolving","docs/5.x/4.api/5.kit/12.resolving",{"title":1788,"path":2627,"stem":2628,"titleTemplate":6},"/docs/5.x/api/kit/logging","docs/5.x/4.api/5.kit/13.logging",{"title":1792,"path":2630,"stem":2631,"titleTemplate":6},"/docs/5.x/api/kit/builder","docs/5.x/4.api/5.kit/14.builder",{"title":850,"path":2633,"stem":2634,"titleTemplate":6},"/docs/5.x/api/kit/examples","docs/5.x/4.api/5.kit/15.examples",{"title":84,"path":2636,"stem":2637,"titleTemplate":6},"/docs/5.x/api/kit/layers","docs/5.x/4.api/5.kit/16.layers",{"title":858,"path":2639,"stem":2640,"titleTemplate":6},"/docs/5.x/api/kit/programmatic","docs/5.x/4.api/5.kit/2.programmatic",{"title":862,"path":2642,"stem":2643,"titleTemplate":6},"/docs/5.x/api/kit/compatibility","docs/5.x/4.api/5.kit/3.compatibility",{"title":866,"path":2645,"stem":2646,"titleTemplate":6},"/docs/5.x/api/kit/autoimports","docs/5.x/4.api/5.kit/4.autoimports",{"title":433,"path":2648,"stem":2649,"titleTemplate":6},"/docs/5.x/api/kit/components","docs/5.x/4.api/5.kit/5.components",{"title":873,"path":2651,"stem":2652,"titleTemplate":6},"/docs/5.x/api/kit/context","docs/5.x/4.api/5.kit/6.context",{"title":877,"path":2654,"stem":2655,"titleTemplate":6},"/docs/5.x/api/kit/pages","docs/5.x/4.api/5.kit/7.pages",{"title":1820,"path":2657,"stem":2658,"titleTemplate":6},"/docs/5.x/api/kit/layout","docs/5.x/4.api/5.kit/8.layout",{"title":1824,"path":2660,"stem":2661,"titleTemplate":6},"/docs/5.x/api/kit/head","docs/5.x/4.api/5.kit/9.head",{"title":889,"path":2663,"stem":2664,"titleTemplate":6},"/docs/5.x/api/kit/plugins","docs/5.x/4.api/5.kit/9.plugins",{"title":1831,"titleTemplate":1832,"icon":894,"path":2666,"stem":2667,"children":2668,"page":108},"/docs/5.x/api/advanced","docs/5.x/4.api/6.advanced",[2669,2672],{"title":406,"path":2670,"stem":2671,"titleTemplate":6},"/docs/5.x/api/advanced/hooks","docs/5.x/4.api/6.advanced/1.hooks",{"title":1840,"path":2673,"stem":2674,"titleTemplate":6},"/docs/5.x/api/advanced/import-meta","docs/5.x/4.api/6.advanced/2.import-meta",{"title":906,"path":2676,"stem":2677,"titleTemplate":909,"icon":32},"/docs/5.x/api/nuxt-config","docs/5.x/4.api/6.nuxt-config",{"title":911,"titleTemplate":912,"icon":913,"path":2679,"stem":2680,"children":2681,"page":108},"/docs/5.x/examples","docs/5.x/4.examples",[2682,2685,2704,2717,2748],{"title":918,"path":2683,"stem":2684,"titleTemplate":6},"/docs/5.x/examples/hello-world","docs/5.x/4.examples/0.hello-world",{"title":922,"path":2686,"stem":2687,"children":2688,"page":108},"/docs/5.x/examples/features","docs/5.x/4.examples/1.features",[2689,2692,2695,2698,2701],{"title":260,"path":2690,"stem":2691,"titleTemplate":6},"/docs/5.x/examples/features/auto-imports","docs/5.x/4.examples/1.features/1.auto-imports",{"title":64,"path":2693,"stem":2694,"titleTemplate":6},"/docs/5.x/examples/features/data-fetching","docs/5.x/4.examples/1.features/2.data-fetching",{"title":69,"path":2696,"stem":2697,"titleTemplate":6},"/docs/5.x/examples/features/state-management","docs/5.x/4.examples/1.features/3.state-management",{"title":936,"path":2699,"stem":2700,"titleTemplate":6},"/docs/5.x/examples/features/meta-tags","docs/5.x/4.examples/1.features/4.meta-tags",{"title":940,"path":2702,"stem":2703,"titleTemplate":6},"/docs/5.x/examples/features/layouts","docs/5.x/4.examples/1.features/5.layouts",{"title":944,"path":2705,"stem":2706,"children":2707,"page":108},"/docs/5.x/examples/routing","docs/5.x/4.examples/2.routing",[2708,2711,2714],{"title":949,"path":2709,"stem":2710,"titleTemplate":6},"/docs/5.x/examples/routing/middleware","docs/5.x/4.examples/2.routing/middleware",{"title":877,"path":2712,"stem":2713,"titleTemplate":6},"/docs/5.x/examples/routing/pages","docs/5.x/4.examples/2.routing/pages",{"title":956,"path":2715,"stem":2716,"titleTemplate":6},"/docs/5.x/examples/routing/universal-router","docs/5.x/4.examples/2.routing/universal-router",{"title":893,"path":2718,"stem":2719,"children":2720,"page":108},"/docs/5.x/examples/advanced","docs/5.x/4.examples/4.advanced",[2721,2724,2727,2730,2733,2736,2739,2742,2745],{"title":84,"path":2722,"stem":2723,"titleTemplate":6},"/docs/5.x/examples/advanced/config-extends","docs/5.x/4.examples/4.advanced/config-extends",{"title":74,"path":2725,"stem":2726,"titleTemplate":6},"/docs/5.x/examples/advanced/error-handling","docs/5.x/4.examples/4.advanced/error-handling",{"title":970,"path":2728,"stem":2729,"titleTemplate":6},"/docs/5.x/examples/advanced/jsx","docs/5.x/4.examples/4.advanced/jsx",{"title":974,"path":2731,"stem":2732,"titleTemplate":6},"/docs/5.x/examples/advanced/locale","docs/5.x/4.examples/4.advanced/locale",{"title":978,"path":2734,"stem":2735,"titleTemplate":6},"/docs/5.x/examples/advanced/module-extend-pages","docs/5.x/4.examples/4.advanced/module-extend-pages",{"title":982,"path":2737,"stem":2738,"titleTemplate":6},"/docs/5.x/examples/advanced/teleport","docs/5.x/4.examples/4.advanced/teleport",{"title":99,"path":2740,"stem":2741,"titleTemplate":6},"/docs/5.x/examples/advanced/testing","docs/5.x/4.examples/4.advanced/testing",{"title":989,"path":2743,"stem":2744,"titleTemplate":6},"/docs/5.x/examples/advanced/use-cookie","docs/5.x/4.examples/4.advanced/use-cookie",{"title":993,"path":2746,"stem":2747,"titleTemplate":6},"/docs/5.x/examples/advanced/use-custom-fetch-composable","docs/5.x/4.examples/4.advanced/use-custom-fetch-composable",{"title":997,"path":2749,"stem":2750,"children":2751,"page":108},"/docs/5.x/examples/experimental","docs/5.x/4.examples/7.experimental",[2752],{"title":1002,"path":2753,"stem":2754,"titleTemplate":6},"/docs/5.x/examples/experimental/wasm","docs/5.x/4.examples/7.experimental/wasm",{"title":1006,"titleTemplate":1007,"icon":1008,"path":2756,"stem":2757,"children":2758,"page":108},"/docs/5.x/community","docs/5.x/5.community",[2759,2762,2765,2768,2771,2774],{"title":1928,"path":2760,"stem":2761,"titleTemplate":6,"icon":1016},"/docs/5.x/community/getting-help","docs/5.x/5.community/2.getting-help",{"title":1932,"path":2763,"stem":2764,"titleTemplate":6,"icon":1021},"/docs/5.x/community/reporting-bugs","docs/5.x/5.community/3.reporting-bugs",{"title":1936,"path":2766,"stem":2767,"titleTemplate":6,"icon":1026},"/docs/5.x/community/contribution","docs/5.x/5.community/4.contribution",{"title":1028,"path":2769,"stem":2770,"titleTemplate":6,"icon":1031},"/docs/5.x/community/framework-contribution","docs/5.x/5.community/5.framework-contribution",{"title":1943,"path":2772,"stem":2773,"titleTemplate":6,"icon":1036},"/docs/5.x/community/roadmap","docs/5.x/5.community/6.roadmap",{"title":1038,"path":2775,"stem":2776,"titleTemplate":6,"icon":1041},"/docs/5.x/community/changelog","docs/5.x/5.community/7.changelog",{"title":1950,"titleTemplate":1951,"icon":1045,"path":2778,"stem":2779,"children":2780,"page":108},"/docs/5.x/bridge","docs/5.x/6.bridge",[2781,2784,2787,2790,2793,2796,2799,2802,2805,2808],{"title":1050,"path":2782,"stem":2783,"titleTemplate":6},"/docs/5.x/bridge/overview","docs/5.x/6.bridge/1.overview",{"title":1054,"path":2785,"stem":2786,"titleTemplate":6},"/docs/5.x/bridge/configuration","docs/5.x/6.bridge/10.configuration",{"title":1962,"path":2788,"stem":2789,"titleTemplate":6},"/docs/5.x/bridge/typescript","docs/5.x/6.bridge/2.typescript",{"title":1966,"path":2791,"stem":2792,"titleTemplate":6},"/docs/5.x/bridge/bridge-composition-api","docs/5.x/6.bridge/3.bridge-composition-api",{"title":1065,"path":2794,"stem":2795,"titleTemplate":6},"/docs/5.x/bridge/plugins-and-middleware","docs/5.x/6.bridge/4.plugins-and-middleware",{"title":1069,"path":2797,"stem":2798,"titleTemplate":6},"/docs/5.x/bridge/nuxt3-compatible-api","docs/5.x/6.bridge/5.nuxt3-compatible-api",{"title":936,"path":2800,"stem":2801,"titleTemplate":6},"/docs/5.x/bridge/meta","docs/5.x/6.bridge/6.meta",{"title":1432,"path":2803,"stem":2804,"titleTemplate":6},"/docs/5.x/bridge/runtime-config","docs/5.x/6.bridge/7.runtime-config",{"title":1982,"path":2806,"stem":2807,"titleTemplate":6},"/docs/5.x/bridge/nitro","docs/5.x/6.bridge/8.nitro",{"title":1986,"path":2809,"stem":2810,"titleTemplate":6},"/docs/5.x/bridge/vite","docs/5.x/6.bridge/9.vite",{"title":1086,"titleTemplate":1990,"icon":107,"path":2812,"stem":2813,"children":2814,"page":108},"/docs/5.x/migration","docs/5.x/7.migration",[2815,2818,2821,2824,2827,2830,2833,2836,2839,2842,2845],{"title":1050,"path":2816,"stem":2817,"titleTemplate":6},"/docs/5.x/migration/overview","docs/5.x/7.migration/1.overview",{"title":1095,"path":2819,"stem":2820,"titleTemplate":6},"/docs/5.x/migration/bundling","docs/5.x/7.migration/10.bundling",{"title":79,"path":2822,"stem":2823,"titleTemplate":6},"/docs/5.x/migration/server","docs/5.x/7.migration/11.server",{"title":1054,"path":2825,"stem":2826,"titleTemplate":6},"/docs/5.x/migration/configuration","docs/5.x/7.migration/2.configuration",{"title":268,"path":2828,"stem":2829,"titleTemplate":6},"/docs/5.x/migration/module-authors","docs/5.x/7.migration/20.module-authors",{"title":866,"path":2831,"stem":2832,"titleTemplate":6},"/docs/5.x/migration/auto-imports","docs/5.x/7.migration/3.auto-imports",{"title":936,"path":2834,"stem":2835,"titleTemplate":6},"/docs/5.x/migration/meta","docs/5.x/7.migration/4.meta",{"title":1065,"path":2837,"stem":2838,"titleTemplate":6},"/docs/5.x/migration/plugins-and-middleware","docs/5.x/7.migration/5.plugins-and-middleware",{"title":2019,"path":2840,"stem":2841,"titleTemplate":6},"/docs/5.x/migration/pages-and-layouts","docs/5.x/7.migration/6.pages-and-layouts",{"title":2023,"path":2843,"stem":2844,"titleTemplate":6},"/docs/5.x/migration/component-options","docs/5.x/7.migration/7.component-options",{"title":1432,"path":2846,"stem":2847,"titleTemplate":6},"/docs/5.x/migration/runtime-config","docs/5.x/7.migration/8.runtime-config",{"title":2849,"path":2850,"stem":2851,"children":2852,"page":108},"Blog","/blog","blog",[2853,2857,2861,2865,2869,2873,2877,2881,2885,2889,2893,2897,2901,2905,2909,2913,2917,2921,2925,2929,2933],{"title":2854,"path":2855,"stem":2856},"Анонс 3.0","/blog/v3","blog/1.v3",{"title":2858,"path":2859,"stem":2860},"Nuxt 3.3","/blog/v3-3","blog/10.v3-3",{"title":2862,"path":2863,"stem":2864},"Nuxt 3.4","/blog/v3-4","blog/11.v3-4",{"title":2866,"path":2867,"stem":2868},"Nuxt 3.5","/blog/v3-5","blog/12.v3-5",{"title":2870,"path":2871,"stem":2872},"Nuxt 3.6","/blog/v3-6","blog/13.v3-6",{"title":2874,"path":2875,"stem":2876},"Nuxt на Edge","/blog/nuxt-on-the-edge","blog/14.nuxt-on-the-edge",{"title":2878,"path":2879,"stem":2880},"Nuxt DevTools v1.0","/blog/nuxt-devtools-v1-0","blog/18.nuxt-devtools-v1-0",{"title":2882,"path":2883,"stem":2884},"Nuxt: Видение на 2023 год","/blog/vision-2023","blog/2.vision-2023",{"title":2886,"path":2887,"stem":2888},"Эволюция Shiki v1.0","/blog/shiki-v1","blog/21.shiki-v1",{"title":2890,"path":2891,"stem":2892},"Обновленная интеграция Nuxt ESLint","/blog/eslint-module","blog/24.eslint-module",{"title":2894,"path":2895,"stem":2896},"Введение в Nuxt Scripts","/blog/nuxt-scripts","blog/26.nuxt-scripts",{"title":2898,"path":2899,"stem":2900},"Представляем Nuxt Icon v1","/blog/nuxt-icon-v1-0","blog/29.nuxt-icon-v1-0",{"title":2902,"path":2903,"stem":2904},"Представляем Nuxt DevTools","/blog/introducing-nuxt-devtools","blog/3.introducing-nuxt-devtools",{"title":2906,"path":2907,"stem":2908},"Анонс релиз-кандидата Nuxt 3","/blog/nuxt3-rc","blog/3.nuxt3-rc",{"title":2910,"path":2911,"stem":2912},"Прекращение поддержки (EOL) Nuxt 2","/blog/nuxt2-eol","blog/4.nuxt2-eol",{"title":2914,"path":2915,"stem":2916},"Представляем Nuxt 3 Beta","/blog/nuxt3-beta","blog/4.nuxt3-beta",{"title":2918,"path":2919,"stem":2920},"Переход на полную статику","/blog/going-full-static","blog/5.going-full-static",{"title":2922,"path":2923,"stem":2924},"Введение в умную предзагрузку","/blog/introducing-smart-prefetching","blog/6.introducing-smart-prefetching",{"title":2926,"path":2927,"stem":2928},"Понимание работы fetch в Nuxt 2.12","/blog/understanding-how-fetch-works-in-nuxt-2-12","blog/7.understanding-how-fetch-works-in-nuxt-2-12",{"title":2930,"path":2931,"stem":2932},"Улучшения статики Nuxt 2","/blog/nuxt-static-improvements","blog/8.nuxt-static-improvements",{"title":2934,"path":2935,"stem":2936},"Nuxt 2: От терминала к браузеру","/blog/nuxtjs-from-terminal-to-browser","blog/9.nuxtjs-from-terminal-to-browser",{"v5":2938,"v4":2939,"v3":2940,"v2":2941},"5 (nightly)","4.4.2","3.21.2","2.18.1",{"id":2943,"title":153,"body":2944,"description":4592,"extension":4593,"links":6,"meta":4594,"navigation":4597,"path":154,"seo":4598,"stem":155,"titleTemplate":6,"__hash__":4599},"docsv3/docs/3.x/2.directory-structure/1.middleware.md",{"type":2945,"value":2946,"toc":4581},"minimark",[2947,2956,2959,2984,2993,3006,3016,3022,3027,3030,3222,3225,3241,3262,3265,3315,3318,3320,3331,3335,3338,3346,3349,3397,3513,3516,3536,3541,3544,3553,3593,3609,3613,3616,3619,3798,3801,3812,3816,3839,3852,4019,4023,4032,4176,4180,4202,4205,4277,4282,4285,4289,4298,4577],[2948,2949,2950,2951,2955],"p",{},"Nuxt даёт настраиваемую ",[2952,2953,2954],"strong",{},"middleware маршрута"," (в терминах Vue Router — хуки навигации): код, который выполняется перед переходом на маршрут.",[2948,2957,2958],{},"Существует три вида middleware для маршрутов:",[2960,2961,2962,2966,2974],"ol",{},[2963,2964,2965],"li",{},"Анонимная (или встроенная) middleware маршрута определяется непосредственно на странице.",[2963,2967,2968,2969,2973],{},"Именованная middleware маршрута, лежащая в ",[2970,2971,2972],"code",{},"middleware/"," и подгружаемая асинхронным импортом при использовании на странице.",[2963,2975,2976,2977,2979,2980,2983],{},"Глобальная middleware маршрута в ",[2970,2978,2972],{}," с суффиксом ",[2970,2981,2982],{},".global",", выполняемая при каждом изменении маршрута.",[2948,2985,2986,2987,2992],{},"Первые два вида middleware можно определить в ",[2988,2989,2990],"a",{"href":679},[2970,2991,678],{},".",[2994,2995,2996],"note",{},[2948,2997,2998,2999,3002,3003,2992],{},"Имена middleware нормализуются до kebab-case: ",[2970,3000,3001],{},"myMiddleware"," становится ",[2970,3004,3005],{},"my-middleware",[2994,3007,3008],{},[2948,3009,3010,3011,3015],{},"Middleware маршрута запускается в части Vue-приложения Nuxt. Несмотря на похожее название, они полностью отличаются от ",[2988,3012,3014],{"href":3013},"/docs/3.x/directory-structure/server#server-middleware","серверных middleware",", которые запускаются в части сервера приложения Nitro.",[3017,3018],"video-accordion",{"platform":3019,"title":3020,"video-id":3021},"vimeo","Видео Vue School о трёх видах middleware","761471577",[3023,3024,3026],"h2",{"id":3025},"использование","Использование",[2948,3028,3029],{},"Middleware маршрута — это хуки навигации: им передаются текущий и целевой маршрут.",[3031,3032,3039],"pre",{"className":3033,"code":3034,"filename":3035,"language":3036,"meta":3037,"style":3038},"language-ts shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","export default defineNuxtRouteMiddleware((to, from) => {\n  if (to.params.id === '1') {\n    return abortNavigation()\n  }\n  // В реальном приложении вы, вероятно, не будете перенаправлять каждый маршрут на `/`,\n  // однако важно проверить `to.path` перед перенаправлением, иначе вы\n  // можете получить бесконечный цикл редиректа\n  if (to.path !== '/') {\n    return navigateTo('/')\n  }\n})\n","middleware/my-middleware.ts","ts","twoslash","",[2970,3040,3041,3084,3125,3137,3143,3150,3156,3162,3190,3209,3214],{"__ignoreMap":3038},[3042,3043,3046,3050,3053,3057,3061,3064,3068,3071,3074,3077,3081],"span",{"class":3044,"line":3045},"line",1,[3042,3047,3049],{"class":3048},"s8R28","export",[3042,3051,3052],{"class":3048}," default",[3042,3054,3056],{"class":3055},"s3cPz"," defineNuxtRouteMiddleware",[3042,3058,3060],{"class":3059},"sZSNi","(",[3042,3062,3060],{"class":3063},"sDfIl",[3042,3065,3067],{"class":3066},"s1nJG","to",[3042,3069,3070],{"class":3063},",",[3042,3072,3073],{"class":3066}," from",[3042,3075,3076],{"class":3063},")",[3042,3078,3080],{"class":3079},"smZ93"," =>",[3042,3082,3083],{"class":3063}," {\n",[3042,3085,3087,3090,3094,3096,3098,3101,3103,3106,3109,3112,3116,3119,3122],{"class":3044,"line":3086},2,[3042,3088,3089],{"class":3048},"  if",[3042,3091,3093],{"class":3092},"sRlkE"," (",[3042,3095,3067],{"class":3059},[3042,3097,2992],{"class":3063},[3042,3099,3100],{"class":3059},"params",[3042,3102,2992],{"class":3063},[3042,3104,3105],{"class":3059},"id",[3042,3107,3108],{"class":3063}," ===",[3042,3110,3111],{"class":3063}," '",[3042,3113,3115],{"class":3114},"sGFVr","1",[3042,3117,3118],{"class":3063},"'",[3042,3120,3121],{"class":3092},") ",[3042,3123,3124],{"class":3063},"{\n",[3042,3126,3128,3131,3134],{"class":3044,"line":3127},3,[3042,3129,3130],{"class":3048},"    return",[3042,3132,3133],{"class":3055}," abortNavigation",[3042,3135,3136],{"class":3092},"()\n",[3042,3138,3140],{"class":3044,"line":3139},4,[3042,3141,3142],{"class":3063},"  }\n",[3042,3144,3146],{"class":3044,"line":3145},5,[3042,3147,3149],{"class":3148},"sWuyu","  // В реальном приложении вы, вероятно, не будете перенаправлять каждый маршрут на `/`,\n",[3042,3151,3153],{"class":3044,"line":3152},6,[3042,3154,3155],{"class":3148},"  // однако важно проверить `to.path` перед перенаправлением, иначе вы\n",[3042,3157,3159],{"class":3044,"line":3158},7,[3042,3160,3161],{"class":3148},"  // можете получить бесконечный цикл редиректа\n",[3042,3163,3165,3167,3169,3171,3173,3176,3179,3181,3184,3186,3188],{"class":3044,"line":3164},8,[3042,3166,3089],{"class":3048},[3042,3168,3093],{"class":3092},[3042,3170,3067],{"class":3059},[3042,3172,2992],{"class":3063},[3042,3174,3175],{"class":3059},"path",[3042,3177,3178],{"class":3063}," !==",[3042,3180,3111],{"class":3063},[3042,3182,3183],{"class":3114},"/",[3042,3185,3118],{"class":3063},[3042,3187,3121],{"class":3092},[3042,3189,3124],{"class":3063},[3042,3191,3193,3195,3198,3200,3202,3204,3206],{"class":3044,"line":3192},9,[3042,3194,3130],{"class":3048},[3042,3196,3197],{"class":3055}," navigateTo",[3042,3199,3060],{"class":3092},[3042,3201,3118],{"class":3063},[3042,3203,3183],{"class":3114},[3042,3205,3118],{"class":3063},[3042,3207,3208],{"class":3092},")\n",[3042,3210,3212],{"class":3044,"line":3211},10,[3042,3213,3142],{"class":3063},[3042,3215,3217,3220],{"class":3044,"line":3216},11,[3042,3218,3219],{"class":3063},"}",[3042,3221,3208],{"class":3059},[2948,3223,3224],{},"Nuxt предоставляет два глобальных хелпера, которые можно вернуть из middleware:",[2960,3226,3227,3234],{},[2963,3228,3229,3233],{},[2988,3230,3231],{"href":687},[2970,3232,686],{}," — перенаправление на указанный маршрут.",[2963,3235,3236,3240],{},[2988,3237,3238],{"href":635},[2970,3239,634],{}," — отмена навигации, опционально с ошибкой.",[2948,3242,3243,3244,3250,3251,3254,3255,3258,3259,2992],{},"В отличие от ",[2988,3245,3249],{"href":3246,"rel":3247},"https://router.vuejs.org/guide/advanced/navigation-guards#Global-Before-Guards",[3248],"nofollow","навигационных гвардов"," в ",[2970,3252,3253],{},"vue-router",", третий аргумент ",[2970,3256,3257],{},"next()"," не передаётся, а ",[2952,3260,3261],{},"редирект и отмена навигации задаются возвращаемым значением",[2948,3263,3264],{},"Возможные возвращаемые значения:",[3266,3267,3268,3275,3289,3303,3309],"ul",{},[2963,3269,3270,3271,3274],{},"ничего (простой ",[2970,3272,3273],{},"return"," или отсутствие возврата вообще) - не блокирует навигацию и переходит к следующей функции middleware, если таковая имеется, или завершает навигацию по маршруту",[2963,3276,3277,3280,3281],{},[2970,3278,3279],{},"return navigateTo('/')"," — перенаправляет по указанному пути; на сервере по умолчанию используется код ",[2988,3282,3285,3288],{"href":3283,"rel":3284},"https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/302",[3248],[2970,3286,3287],{},"302"," Found",[2963,3290,3291,3294,3295],{},[2970,3292,3293],{},"return navigateTo('/', { redirectCode: 301 })"," — перенаправление с кодом ",[2988,3296,3299,3302],{"href":3297,"rel":3298},"https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/301",[3248],[2970,3300,3301],{},"301"," Moved Permanently",[2963,3304,3305,3308],{},[2970,3306,3307],{},"return abortNavigation()"," - останавливает текущую навигацию",[2963,3310,3311,3314],{},[2970,3312,3313],{},"return abortNavigation(error)"," - отклоняет текущую навигацию с ошибкой",[3316,3317],"read-more",{"to":687},[3316,3319],{"to":635},[3321,3322,3323],"important",{},[2948,3324,3325,3326,3330],{},"Для редиректов и остановки навигации лучше использовать перечисленные выше хелперы. Иные варианты возврата из ",[2988,3327,3329],{"href":3246,"rel":3328},[3248],"документации vue-router"," могут сработать, но без гарантий совместимости в будущем.",[3023,3332,3334],{"id":3333},"порядок-middleware","Порядок middleware",[2948,3336,3337],{},"Middleware работают в следующем порядке:",[2960,3339,3340,3343],{},[2963,3341,3342],{},"Глобальные middleware",[2963,3344,3345],{},"Порядок middleware, определяемый страницей (если несколько middleware объявлены массивом)",[2948,3347,3348],{},"Например, предположим, что у вас есть следующие middleware и компонент:",[3031,3350,3355],{"className":3351,"code":3352,"filename":3353,"language":3354,"meta":3038,"style":3038},"language-bash shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","-| middleware/\n---| analytics.global.ts\n---| setup.global.ts\n---| auth.ts\n","middleware/ directory","bash",[2970,3356,3357,3369,3379,3388],{"__ignoreMap":3038},[3042,3358,3359,3363,3366],{"class":3044,"line":3045},[3042,3360,3362],{"class":3361},"s52Pk","-",[3042,3364,3365],{"class":3063},"|",[3042,3367,3368],{"class":3361}," middleware/\n",[3042,3370,3371,3374,3376],{"class":3044,"line":3086},[3042,3372,3373],{"class":3361},"---",[3042,3375,3365],{"class":3063},[3042,3377,3378],{"class":3361}," analytics.global.ts\n",[3042,3380,3381,3383,3385],{"class":3044,"line":3127},[3042,3382,3373],{"class":3361},[3042,3384,3365],{"class":3063},[3042,3386,3387],{"class":3361}," setup.global.ts\n",[3042,3389,3390,3392,3394],{"class":3044,"line":3139},[3042,3391,3373],{"class":3361},[3042,3393,3365],{"class":3063},[3042,3395,3396],{"class":3361}," auth.ts\n",[3031,3398,3403],{"className":3399,"code":3400,"filename":3401,"language":3402,"meta":3037,"style":3038},"language-vue shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","\u003Cscript setup lang=\"ts\">\ndefinePageMeta({\n  middleware: [\n    function (to, from) {\n      // Пользовательская middleware\n    },\n    'auth',\n  ],\n})\n\u003C/script>\n","pages/profile.vue","vue",[2970,3404,3405,3432,3440,3451,3468,3473,3478,3491,3498,3504],{"__ignoreMap":3038},[3042,3406,3407,3410,3413,3416,3419,3422,3425,3427,3429],{"class":3044,"line":3045},[3042,3408,3409],{"class":3063},"\u003C",[3042,3411,3412],{"class":3092},"script",[3042,3414,3415],{"class":3079}," setup",[3042,3417,3418],{"class":3079}," lang",[3042,3420,3421],{"class":3063},"=",[3042,3423,3424],{"class":3063},"\"",[3042,3426,3036],{"class":3114},[3042,3428,3424],{"class":3063},[3042,3430,3431],{"class":3063},">\n",[3042,3433,3434,3436,3438],{"class":3044,"line":3086},[3042,3435,678],{"class":3055},[3042,3437,3060],{"class":3059},[3042,3439,3124],{"class":3063},[3042,3441,3442,3445,3448],{"class":3044,"line":3127},[3042,3443,3444],{"class":3092},"  middleware",[3042,3446,3447],{"class":3063},":",[3042,3449,3450],{"class":3059}," [\n",[3042,3452,3453,3456,3458,3460,3462,3464,3466],{"class":3044,"line":3139},[3042,3454,3455],{"class":3079},"    function",[3042,3457,3093],{"class":3063},[3042,3459,3067],{"class":3066},[3042,3461,3070],{"class":3063},[3042,3463,3073],{"class":3066},[3042,3465,3076],{"class":3063},[3042,3467,3083],{"class":3063},[3042,3469,3470],{"class":3044,"line":3145},[3042,3471,3472],{"class":3148},"      // Пользовательская middleware\n",[3042,3474,3475],{"class":3044,"line":3152},[3042,3476,3477],{"class":3063},"    },\n",[3042,3479,3480,3483,3486,3488],{"class":3044,"line":3158},[3042,3481,3482],{"class":3063},"    '",[3042,3484,3485],{"class":3114},"auth",[3042,3487,3118],{"class":3063},[3042,3489,3490],{"class":3063},",\n",[3042,3492,3493,3496],{"class":3044,"line":3164},[3042,3494,3495],{"class":3059},"  ]",[3042,3497,3490],{"class":3063},[3042,3499,3500,3502],{"class":3044,"line":3192},[3042,3501,3219],{"class":3063},[3042,3503,3208],{"class":3059},[3042,3505,3506,3509,3511],{"class":3044,"line":3211},[3042,3507,3508],{"class":3063},"\u003C/",[3042,3510,3412],{"class":3092},[3042,3512,3431],{"class":3063},[2948,3514,3515],{},"Можно ожидать, что middleware будут запущены в следующем порядке:",[2960,3517,3518,3523,3528,3531],{},[2963,3519,3520],{},[2970,3521,3522],{},"analytics.global.ts",[2963,3524,3525],{},[2970,3526,3527],{},"setup.global.ts",[2963,3529,3530],{},"Пользовательская встроенная middleware",[2963,3532,3533],{},[2970,3534,3535],{},"auth.ts",[3537,3538,3540],"h3",{"id":3539},"порядок-глобальных-middleware","Порядок глобальных middleware",[2948,3542,3543],{},"По умолчанию глобальные middleware выполняются в алфавитном порядке на основе имени файла.",[2948,3545,3546,3547,3549,3550,3552],{},"Однако иногда нужен явный порядок. Например, ",[2970,3548,3527],{}," должен выполняться раньше ",[2970,3551,3522],{},". Тогда задайте глобальным middleware префикс с «алфавитной» нумерацией.",[3031,3554,3557],{"className":3351,"code":3555,"filename":3556,"language":3354,"meta":3038,"style":3038},"-| middleware/\n---| 01.setup.global.ts\n---| 02.analytics.global.ts\n---| auth.ts\n","Directory structure",[2970,3558,3559,3567,3576,3585],{"__ignoreMap":3038},[3042,3560,3561,3563,3565],{"class":3044,"line":3045},[3042,3562,3362],{"class":3361},[3042,3564,3365],{"class":3063},[3042,3566,3368],{"class":3361},[3042,3568,3569,3571,3573],{"class":3044,"line":3086},[3042,3570,3373],{"class":3361},[3042,3572,3365],{"class":3063},[3042,3574,3575],{"class":3361}," 01.setup.global.ts\n",[3042,3577,3578,3580,3582],{"class":3044,"line":3127},[3042,3579,3373],{"class":3361},[3042,3581,3365],{"class":3063},[3042,3583,3584],{"class":3361}," 02.analytics.global.ts\n",[3042,3586,3587,3589,3591],{"class":3044,"line":3139},[3042,3588,3373],{"class":3361},[3042,3590,3365],{"class":3063},[3042,3592,3396],{"class":3361},[2994,3594,3595],{},[2948,3596,3597,3598,3601,3602,3605,3606,2992],{},"Если вы новичок в «алфавитной» нумерации, помните, что имена файлов сортируются как строки, а не как числовые значения. Например, ",[2970,3599,3600],{},"10.new.global.ts"," будет предшествовать ",[2970,3603,3604],{},"2.new.global.ts",". Вот почему в примере номера из одной цифры имеют префикс ",[2970,3607,3608],{},"0",[3023,3610,3612],{"id":3611},"когда-запускаются-middleware","Когда запускаются middleware",[2948,3614,3615],{},"Если сайт рендерится или генерируется сервером, middleware для начальной страницы будет выполняться как при рендеринге страницы, так и снова на клиенте. Это может быть необходимо, если вашей middleware требуется окружение браузера, например, если у вас есть сгенерированный сайт, агрессивно кэширующий ответы или вы хотите прочитать значение из локального хранилища.",[2948,3617,3618],{},"Однако, если вы хотите избежать такого поведения, вы можете сделать следующее:",[3031,3620,3623],{"className":3033,"code":3621,"filename":3622,"language":3036,"meta":3037,"style":3038},"export default defineNuxtRouteMiddleware((to) => {\n  // пропустить middleware на сервере\n  if (import.meta.server) {\n    return\n  }\n  // полностью пропустить middleware на стороне клиента\n  if (import.meta.client) {\n    return\n  }\n  // или пропустить middleware только при начальной загрузке клиента\n  const nuxtApp = useNuxtApp()\n  if (import.meta.client && nuxtApp.isHydrating && nuxtApp.payload.serverRendered) {\n    return\n  }\n})\n","middleware/example.ts",[2970,3624,3625,3645,3650,3672,3677,3681,3686,3707,3711,3715,3720,3736,3781,3786,3791],{"__ignoreMap":3038},[3042,3626,3627,3629,3631,3633,3635,3637,3639,3641,3643],{"class":3044,"line":3045},[3042,3628,3049],{"class":3048},[3042,3630,3052],{"class":3048},[3042,3632,3056],{"class":3055},[3042,3634,3060],{"class":3059},[3042,3636,3060],{"class":3063},[3042,3638,3067],{"class":3066},[3042,3640,3076],{"class":3063},[3042,3642,3080],{"class":3079},[3042,3644,3083],{"class":3063},[3042,3646,3647],{"class":3044,"line":3086},[3042,3648,3649],{"class":3148},"  // пропустить middleware на сервере\n",[3042,3651,3652,3654,3656,3659,3661,3664,3666,3668,3670],{"class":3044,"line":3127},[3042,3653,3089],{"class":3048},[3042,3655,3093],{"class":3092},[3042,3657,3658],{"class":3048},"import",[3042,3660,2992],{"class":3063},[3042,3662,3663],{"class":3059},"meta",[3042,3665,2992],{"class":3063},[3042,3667,179],{"class":3059},[3042,3669,3121],{"class":3092},[3042,3671,3124],{"class":3063},[3042,3673,3674],{"class":3044,"line":3139},[3042,3675,3676],{"class":3048},"    return\n",[3042,3678,3679],{"class":3044,"line":3145},[3042,3680,3142],{"class":3063},[3042,3682,3683],{"class":3044,"line":3152},[3042,3684,3685],{"class":3148},"  // полностью пропустить middleware на стороне клиента\n",[3042,3687,3688,3690,3692,3694,3696,3698,3700,3703,3705],{"class":3044,"line":3158},[3042,3689,3089],{"class":3048},[3042,3691,3093],{"class":3092},[3042,3693,3658],{"class":3048},[3042,3695,2992],{"class":3063},[3042,3697,3663],{"class":3059},[3042,3699,2992],{"class":3063},[3042,3701,3702],{"class":3059},"client",[3042,3704,3121],{"class":3092},[3042,3706,3124],{"class":3063},[3042,3708,3709],{"class":3044,"line":3164},[3042,3710,3676],{"class":3048},[3042,3712,3713],{"class":3044,"line":3192},[3042,3714,3142],{"class":3063},[3042,3716,3717],{"class":3044,"line":3211},[3042,3718,3719],{"class":3148},"  // или пропустить middleware только при начальной загрузке клиента\n",[3042,3721,3722,3725,3728,3731,3734],{"class":3044,"line":3216},[3042,3723,3724],{"class":3079},"  const",[3042,3726,3727],{"class":3059}," nuxtApp",[3042,3729,3730],{"class":3063}," =",[3042,3732,3733],{"class":3055}," useNuxtApp",[3042,3735,3136],{"class":3092},[3042,3737,3739,3741,3743,3745,3747,3749,3751,3753,3756,3758,3760,3763,3765,3767,3769,3772,3774,3777,3779],{"class":3044,"line":3738},12,[3042,3740,3089],{"class":3048},[3042,3742,3093],{"class":3092},[3042,3744,3658],{"class":3048},[3042,3746,2992],{"class":3063},[3042,3748,3663],{"class":3059},[3042,3750,2992],{"class":3063},[3042,3752,3702],{"class":3059},[3042,3754,3755],{"class":3063}," &&",[3042,3757,3727],{"class":3059},[3042,3759,2992],{"class":3063},[3042,3761,3762],{"class":3059},"isHydrating",[3042,3764,3755],{"class":3063},[3042,3766,3727],{"class":3059},[3042,3768,2992],{"class":3063},[3042,3770,3771],{"class":3059},"payload",[3042,3773,2992],{"class":3063},[3042,3775,3776],{"class":3059},"serverRendered",[3042,3778,3121],{"class":3092},[3042,3780,3124],{"class":3063},[3042,3782,3784],{"class":3044,"line":3783},13,[3042,3785,3676],{"class":3048},[3042,3787,3789],{"class":3044,"line":3788},14,[3042,3790,3142],{"class":3063},[3042,3792,3794,3796],{"class":3044,"line":3793},15,[3042,3795,3219],{"class":3063},[3042,3797,3208],{"class":3059},[2948,3799,3800],{},"Так происходит даже если на сервере в middleware выброшена ошибка и отрендерена страница ошибки: middleware всё равно выполнится снова в браузере.",[2994,3802,3803],{},[2948,3804,3805,3806,3811],{},"Отрисовка страницы ошибки — это совершенно отдельная загрузка страницы, что означает, что любая зарегистрированная middleware будет запущена снова. Вы можете использовать ",[2988,3807,3809],{"href":3808},"/docs/3.x/getting-started/error-handling#useerror",[2970,3810,523],{}," в middleware, чтобы проверить, обрабатывается ли ошибка.",[3023,3813,3815],{"id":3814},"доступ-к-маршруту-в-middleware","Доступ к маршруту в middleware",[2948,3817,3818,3819,3821,3822,3825,3826,3831,3832,3835,3836,3838],{},"Всегда используйте параметры ",[2970,3820,3067],{}," и ",[2970,3823,3824],{},"from"," в middleware для доступа к следующему и предыдущему маршруту. Избегайте композабла ",[2988,3827,3828],{"href":592},[2970,3829,3830],{},"useRoute()"," в этом контексте.\nВ middleware ",[2952,3833,3834],{},"нет понятия «текущего маршрута»",": навигация может быть отменена или перенаправлена. В таком контексте ",[2970,3837,3830],{}," будет давать неверные данные.",[3840,3841,3842],"warning",{},[2948,3843,3844,3845,3847,3848,3851],{},"Иногда вы вызываете композабл, который внутри использует ",[2970,3846,3830],{},", из‑за чего предупреждение появляется даже без прямого вызова в middleware.\nЭто приводит к ",[2952,3849,3850],{},"той же проблеме",", поэтому передавайте маршрут аргументом в функции, которые вызываются из middleware.",[3853,3854,3855,3925,3973],"code-group",{},[3031,3856,3859],{"className":3033,"code":3857,"filename":3858,"language":3036,"meta":3037,"style":3038},"// @errors: 2304\nexport default defineNuxtRouteMiddleware((to) => {\n  // передаём маршрут в функцию, чтобы не вызывать `useRoute()` внутри middleware\n  doSomethingWithRoute(to)\n\n  // ❌ так появится предупреждение и это не рекомендуется\n  callsRouteInternally()\n})\n","middleware/access-route.ts",[2970,3860,3861,3866,3886,3891,3902,3907,3912,3919],{"__ignoreMap":3038},[3042,3862,3863],{"class":3044,"line":3045},[3042,3864,3865],{"class":3148},"// @errors: 2304\n",[3042,3867,3868,3870,3872,3874,3876,3878,3880,3882,3884],{"class":3044,"line":3086},[3042,3869,3049],{"class":3048},[3042,3871,3052],{"class":3048},[3042,3873,3056],{"class":3055},[3042,3875,3060],{"class":3059},[3042,3877,3060],{"class":3063},[3042,3879,3067],{"class":3066},[3042,3881,3076],{"class":3063},[3042,3883,3080],{"class":3079},[3042,3885,3083],{"class":3063},[3042,3887,3888],{"class":3044,"line":3127},[3042,3889,3890],{"class":3148},"  // передаём маршрут в функцию, чтобы не вызывать `useRoute()` внутри middleware\n",[3042,3892,3893,3896,3898,3900],{"class":3044,"line":3139},[3042,3894,3895],{"class":3055},"  doSomethingWithRoute",[3042,3897,3060],{"class":3092},[3042,3899,3067],{"class":3059},[3042,3901,3208],{"class":3092},[3042,3903,3904],{"class":3044,"line":3145},[3042,3905,3906],{"emptyLinePlaceholder":1215},"\n",[3042,3908,3909],{"class":3044,"line":3152},[3042,3910,3911],{"class":3148},"  // ❌ так появится предупреждение и это не рекомендуется\n",[3042,3913,3914,3917],{"class":3044,"line":3158},[3042,3915,3916],{"class":3055},"  callsRouteInternally",[3042,3918,3136],{"class":3092},[3042,3920,3921,3923],{"class":3044,"line":3164},[3042,3922,3219],{"class":3063},[3042,3924,3208],{"class":3059},[3031,3926,3929],{"className":3033,"code":3927,"filename":3928,"language":3036,"meta":3037,"style":3038},"// маршрут передаётся аргументом — корректно для использования в middleware\nexport function doSomethingWithRoute (route = useRoute()) {\n  // ...\n}\n","utils/handle-route.ts",[2970,3930,3931,3936,3963,3968],{"__ignoreMap":3038},[3042,3932,3933],{"class":3044,"line":3045},[3042,3934,3935],{"class":3148},"// маршрут передаётся аргументом — корректно для использования в middleware\n",[3042,3937,3938,3940,3943,3946,3948,3951,3953,3956,3959,3961],{"class":3044,"line":3086},[3042,3939,3049],{"class":3048},[3042,3941,3942],{"class":3079}," function",[3042,3944,3945],{"class":3055}," doSomethingWithRoute",[3042,3947,3093],{"class":3063},[3042,3949,3950],{"class":3066},"route",[3042,3952,3730],{"class":3063},[3042,3954,3955],{"class":3055}," useRoute",[3042,3957,3958],{"class":3059},"()",[3042,3960,3076],{"class":3063},[3042,3962,3083],{"class":3063},[3042,3964,3965],{"class":3044,"line":3127},[3042,3966,3967],{"class":3148},"  // ...\n",[3042,3969,3970],{"class":3044,"line":3139},[3042,3971,3972],{"class":3063},"}\n",[3031,3974,3977],{"className":3033,"code":3975,"filename":3976,"language":3036,"meta":3037,"style":3038},"// ❌ эта функция не подходит для вызова из middleware\nexport function callsRouteInternally () {\n  const route = useRoute()\n  // ...\n}\n","utils/dont-do-this.ts",[2970,3978,3979,3984,3998,4011,4015],{"__ignoreMap":3038},[3042,3980,3981],{"class":3044,"line":3045},[3042,3982,3983],{"class":3148},"// ❌ эта функция не подходит для вызова из middleware\n",[3042,3985,3986,3988,3990,3993,3996],{"class":3044,"line":3086},[3042,3987,3049],{"class":3048},[3042,3989,3942],{"class":3079},[3042,3991,3992],{"class":3055}," callsRouteInternally",[3042,3994,3995],{"class":3063}," ()",[3042,3997,3083],{"class":3063},[3042,3999,4000,4002,4005,4007,4009],{"class":3044,"line":3127},[3042,4001,3724],{"class":3079},[3042,4003,4004],{"class":3059}," route",[3042,4006,3730],{"class":3063},[3042,4008,3955],{"class":3055},[3042,4010,3136],{"class":3092},[3042,4012,4013],{"class":3044,"line":3139},[3042,4014,3967],{"class":3148},[3042,4016,4017],{"class":3044,"line":3145},[3042,4018,3972],{"class":3063},[3023,4020,4022],{"id":4021},"динамическое-добавление-middleware","Динамическое добавление middleware",[2948,4024,4025,4026,4031],{},"Глобальную или именованную middleware маршрута можно добавить вручную с помощью вспомогательной функции ",[2988,4027,4028],{"href":639},[2970,4029,4030],{},"addRouteMiddleware()",", например, из плагина.",[3031,4033,4035],{"className":3033,"code":4034,"language":3036,"meta":3037,"style":3038},"export default defineNuxtPlugin(() => {\n  addRouteMiddleware('global-test', () => {\n    console.log('эта глобальная middleware была добавлена в плагин и будет запускаться при каждом изменении маршрута')\n  }, { global: true })\n\n  addRouteMiddleware('named-test', () => {\n    console.log('эта именованная middleware была добавлена в плагин и переопределит любую существующую middleware с тем же именем')\n  })\n})\n",[2970,4036,4037,4054,4076,4097,4119,4123,4144,4163,4170],{"__ignoreMap":3038},[3042,4038,4039,4041,4043,4046,4048,4050,4052],{"class":3044,"line":3045},[3042,4040,3049],{"class":3048},[3042,4042,3052],{"class":3048},[3042,4044,4045],{"class":3055}," defineNuxtPlugin",[3042,4047,3060],{"class":3059},[3042,4049,3958],{"class":3063},[3042,4051,3080],{"class":3079},[3042,4053,3083],{"class":3063},[3042,4055,4056,4059,4061,4063,4066,4068,4070,4072,4074],{"class":3044,"line":3086},[3042,4057,4058],{"class":3055},"  addRouteMiddleware",[3042,4060,3060],{"class":3092},[3042,4062,3118],{"class":3063},[3042,4064,4065],{"class":3114},"global-test",[3042,4067,3118],{"class":3063},[3042,4069,3070],{"class":3063},[3042,4071,3995],{"class":3063},[3042,4073,3080],{"class":3079},[3042,4075,3083],{"class":3063},[3042,4077,4078,4081,4083,4086,4088,4090,4093,4095],{"class":3044,"line":3127},[3042,4079,4080],{"class":3059},"    console",[3042,4082,2992],{"class":3063},[3042,4084,4085],{"class":3055},"log",[3042,4087,3060],{"class":3092},[3042,4089,3118],{"class":3063},[3042,4091,4092],{"class":3114},"эта глобальная middleware была добавлена в плагин и будет запускаться при каждом изменении маршрута",[3042,4094,3118],{"class":3063},[3042,4096,3208],{"class":3092},[3042,4098,4099,4102,4105,4108,4110,4114,4117],{"class":3044,"line":3139},[3042,4100,4101],{"class":3063},"  },",[3042,4103,4104],{"class":3063}," {",[3042,4106,4107],{"class":3092}," global",[3042,4109,3447],{"class":3063},[3042,4111,4113],{"class":4112},"sbKd-"," true",[3042,4115,4116],{"class":3063}," }",[3042,4118,3208],{"class":3092},[3042,4120,4121],{"class":3044,"line":3145},[3042,4122,3906],{"emptyLinePlaceholder":1215},[3042,4124,4125,4127,4129,4131,4134,4136,4138,4140,4142],{"class":3044,"line":3152},[3042,4126,4058],{"class":3055},[3042,4128,3060],{"class":3092},[3042,4130,3118],{"class":3063},[3042,4132,4133],{"class":3114},"named-test",[3042,4135,3118],{"class":3063},[3042,4137,3070],{"class":3063},[3042,4139,3995],{"class":3063},[3042,4141,3080],{"class":3079},[3042,4143,3083],{"class":3063},[3042,4145,4146,4148,4150,4152,4154,4156,4159,4161],{"class":3044,"line":3158},[3042,4147,4080],{"class":3059},[3042,4149,2992],{"class":3063},[3042,4151,4085],{"class":3055},[3042,4153,3060],{"class":3092},[3042,4155,3118],{"class":3063},[3042,4157,4158],{"class":3114},"эта именованная middleware была добавлена в плагин и переопределит любую существующую middleware с тем же именем",[3042,4160,3118],{"class":3063},[3042,4162,3208],{"class":3092},[3042,4164,4165,4168],{"class":3044,"line":3164},[3042,4166,4167],{"class":3063},"  }",[3042,4169,3208],{"class":3092},[3042,4171,4172,4174],{"class":3044,"line":3192},[3042,4173,3219],{"class":3063},[3042,4175,3208],{"class":3059},[3023,4177,4179],{"id":4178},"пример","Пример",[3031,4181,4184],{"className":3351,"code":4182,"filename":4183,"language":3354,"meta":3038,"style":3038},"-| middleware/\n---| auth.ts\n","Directory Structure",[2970,4185,4186,4194],{"__ignoreMap":3038},[3042,4187,4188,4190,4192],{"class":3044,"line":3045},[3042,4189,3362],{"class":3361},[3042,4191,3365],{"class":3063},[3042,4193,3368],{"class":3361},[3042,4195,4196,4198,4200],{"class":3044,"line":3086},[3042,4197,3373],{"class":3361},[3042,4199,3365],{"class":3063},[3042,4201,3396],{"class":3361},[2948,4203,4204],{},"В файле страницы вы можете сослаться на эту middleware маршрута:",[3031,4206,4208],{"className":3399,"code":4207,"language":3402,"meta":3037,"style":3038},"\u003Cscript setup lang=\"ts\">\ndefinePageMeta({\n  middleware: ['auth'],\n  // или middleware: 'auth'\n})\n\u003C/script>\n",[2970,4209,4210,4230,4238,4258,4263,4269],{"__ignoreMap":3038},[3042,4211,4212,4214,4216,4218,4220,4222,4224,4226,4228],{"class":3044,"line":3045},[3042,4213,3409],{"class":3063},[3042,4215,3412],{"class":3092},[3042,4217,3415],{"class":3079},[3042,4219,3418],{"class":3079},[3042,4221,3421],{"class":3063},[3042,4223,3424],{"class":3063},[3042,4225,3036],{"class":3114},[3042,4227,3424],{"class":3063},[3042,4229,3431],{"class":3063},[3042,4231,4232,4234,4236],{"class":3044,"line":3086},[3042,4233,678],{"class":3055},[3042,4235,3060],{"class":3059},[3042,4237,3124],{"class":3063},[3042,4239,4240,4242,4244,4247,4249,4251,4253,4256],{"class":3044,"line":3127},[3042,4241,3444],{"class":3092},[3042,4243,3447],{"class":3063},[3042,4245,4246],{"class":3059}," [",[3042,4248,3118],{"class":3063},[3042,4250,3485],{"class":3114},[3042,4252,3118],{"class":3063},[3042,4254,4255],{"class":3059},"]",[3042,4257,3490],{"class":3063},[3042,4259,4260],{"class":3044,"line":3139},[3042,4261,4262],{"class":3148},"  // или middleware: 'auth'\n",[3042,4264,4265,4267],{"class":3044,"line":3145},[3042,4266,3219],{"class":3063},[3042,4268,3208],{"class":3059},[3042,4270,4271,4273,4275],{"class":3044,"line":3152},[3042,4272,3508],{"class":3063},[3042,4274,3412],{"class":3092},[3042,4276,3431],{"class":3063},[2948,4278,4279,4280,2992],{},"Теперь, прежде чем переход на эту страницу сможет быть завершен, будет запущена middleware маршрута ",[2970,4281,3485],{},[4283,4284],"link-example",{"to":950},[3023,4286,4288],{"id":4287},"настройка-middleware-во-время-сборки","Настройка middleware во время сборки",[2948,4290,4291,4292,4294,4295,2992],{},"Вместо использования ",[2970,4293,678],{}," на каждой странице, вы можете добавить именованную middleware маршрута в хуке ",[2970,4296,4297],{},"pages:extend",[3031,4299,4301],{"className":3033,"code":4300,"filename":222,"language":3036,"meta":3037,"style":3038},"import type { NuxtPage } from 'nuxt/schema'\n\nexport default defineNuxtConfig({\n  hooks: {\n    'pages:extend' (pages) {\n      function setMiddleware (pages: NuxtPage[]) {\n        for (const page of pages) {\n          if (/* некоторое условие */ Math.random() > 0.5) {\n            page.meta ||= {}\n            // Обратите внимание, что это переопределит любые middleware, заданные в `definePageMeta` на странице.\n            page.meta.middleware = ['named']\n          }\n          if (page.children) {\n            setMiddleware(page.children)\n          }\n        }\n      }\n      setMiddleware(pages)\n    },\n  },\n})\n",[2970,4302,4303,4327,4331,4344,4353,4369,4392,4415,4447,4462,4467,4493,4498,4516,4531,4535,4541,4547,4559,4564,4570],{"__ignoreMap":3038},[3042,4304,4305,4307,4310,4312,4315,4317,4319,4321,4324],{"class":3044,"line":3045},[3042,4306,3658],{"class":3048},[3042,4308,4309],{"class":3048}," type",[3042,4311,4104],{"class":3063},[3042,4313,4314],{"class":3059}," NuxtPage",[3042,4316,4116],{"class":3063},[3042,4318,3073],{"class":3048},[3042,4320,3111],{"class":3063},[3042,4322,4323],{"class":3114},"nuxt/schema",[3042,4325,4326],{"class":3063},"'\n",[3042,4328,4329],{"class":3044,"line":3086},[3042,4330,3906],{"emptyLinePlaceholder":1215},[3042,4332,4333,4335,4337,4340,4342],{"class":3044,"line":3127},[3042,4334,3049],{"class":3048},[3042,4336,3052],{"class":3048},[3042,4338,4339],{"class":3055}," defineNuxtConfig",[3042,4341,3060],{"class":3059},[3042,4343,3124],{"class":3063},[3042,4345,4346,4349,4351],{"class":3044,"line":3139},[3042,4347,4348],{"class":3092},"  hooks",[3042,4350,3447],{"class":3063},[3042,4352,3083],{"class":3063},[3042,4354,4355,4357,4359,4361,4363,4365,4367],{"class":3044,"line":3145},[3042,4356,3482],{"class":3063},[3042,4358,4297],{"class":3114},[3042,4360,3118],{"class":3063},[3042,4362,3093],{"class":3063},[3042,4364,166],{"class":3066},[3042,4366,3076],{"class":3063},[3042,4368,3083],{"class":3063},[3042,4370,4371,4374,4377,4379,4381,4383,4385,4388,4390],{"class":3044,"line":3152},[3042,4372,4373],{"class":3079},"      function",[3042,4375,4376],{"class":3055}," setMiddleware",[3042,4378,3093],{"class":3063},[3042,4380,166],{"class":3066},[3042,4382,3447],{"class":3063},[3042,4384,4314],{"class":3361},[3042,4386,4387],{"class":3092},"[]",[3042,4389,3076],{"class":3063},[3042,4391,3083],{"class":3063},[3042,4393,4394,4397,4399,4402,4405,4408,4411,4413],{"class":3044,"line":3158},[3042,4395,4396],{"class":3048},"        for",[3042,4398,3093],{"class":3092},[3042,4400,4401],{"class":3079},"const",[3042,4403,4404],{"class":3059}," page",[3042,4406,4407],{"class":3063}," of",[3042,4409,4410],{"class":3059}," pages",[3042,4412,3121],{"class":3092},[3042,4414,3124],{"class":3063},[3042,4416,4417,4420,4422,4425,4428,4430,4433,4436,4439,4443,4445],{"class":3044,"line":3164},[3042,4418,4419],{"class":3048},"          if",[3042,4421,3093],{"class":3092},[3042,4423,4424],{"class":3148},"/* некоторое условие */",[3042,4426,4427],{"class":3059}," Math",[3042,4429,2992],{"class":3063},[3042,4431,4432],{"class":3055},"random",[3042,4434,4435],{"class":3092},"() ",[3042,4437,4438],{"class":3063},">",[3042,4440,4442],{"class":4441},"sYRBq"," 0.5",[3042,4444,3121],{"class":3092},[3042,4446,3124],{"class":3063},[3042,4448,4449,4452,4454,4456,4459],{"class":3044,"line":3192},[3042,4450,4451],{"class":3059},"            page",[3042,4453,2992],{"class":3063},[3042,4455,3663],{"class":3059},[3042,4457,4458],{"class":3063}," ||=",[3042,4460,4461],{"class":3063}," {}\n",[3042,4463,4464],{"class":3044,"line":3211},[3042,4465,4466],{"class":3148},"            // Обратите внимание, что это переопределит любые middleware, заданные в `definePageMeta` на странице.\n",[3042,4468,4469,4471,4473,4475,4477,4479,4481,4483,4485,4488,4490],{"class":3044,"line":3216},[3042,4470,4451],{"class":3059},[3042,4472,2992],{"class":3063},[3042,4474,3663],{"class":3059},[3042,4476,2992],{"class":3063},[3042,4478,153],{"class":3059},[3042,4480,3730],{"class":3063},[3042,4482,4246],{"class":3092},[3042,4484,3118],{"class":3063},[3042,4486,4487],{"class":3114},"named",[3042,4489,3118],{"class":3063},[3042,4491,4492],{"class":3092},"]\n",[3042,4494,4495],{"class":3044,"line":3738},[3042,4496,4497],{"class":3063},"          }\n",[3042,4499,4500,4502,4504,4507,4509,4512,4514],{"class":3044,"line":3783},[3042,4501,4419],{"class":3048},[3042,4503,3093],{"class":3092},[3042,4505,4506],{"class":3059},"page",[3042,4508,2992],{"class":3063},[3042,4510,4511],{"class":3059},"children",[3042,4513,3121],{"class":3092},[3042,4515,3124],{"class":3063},[3042,4517,4518,4521,4523,4525,4527,4529],{"class":3044,"line":3788},[3042,4519,4520],{"class":3055},"            setMiddleware",[3042,4522,3060],{"class":3092},[3042,4524,4506],{"class":3059},[3042,4526,2992],{"class":3063},[3042,4528,4511],{"class":3059},[3042,4530,3208],{"class":3092},[3042,4532,4533],{"class":3044,"line":3793},[3042,4534,4497],{"class":3063},[3042,4536,4538],{"class":3044,"line":4537},16,[3042,4539,4540],{"class":3063},"        }\n",[3042,4542,4544],{"class":3044,"line":4543},17,[3042,4545,4546],{"class":3063},"      }\n",[3042,4548,4550,4553,4555,4557],{"class":3044,"line":4549},18,[3042,4551,4552],{"class":3055},"      setMiddleware",[3042,4554,3060],{"class":3092},[3042,4556,166],{"class":3059},[3042,4558,3208],{"class":3092},[3042,4560,4562],{"class":3044,"line":4561},19,[3042,4563,3477],{"class":3063},[3042,4565,4567],{"class":3044,"line":4566},20,[3042,4568,4569],{"class":3063},"  },\n",[3042,4571,4573,4575],{"class":3044,"line":4572},21,[3042,4574,3219],{"class":3063},[3042,4576,3208],{"class":3059},[4578,4579,4580],"style",{},"html pre.shiki code .s8R28, html code.shiki .s8R28{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#39ADB5;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s3cPz, html code.shiki .s3cPz{--shiki-light:#6182B8;--shiki-default:#6182B8;--shiki-dark:#82AAFF}html pre.shiki code .sZSNi, html code.shiki .sZSNi{--shiki-light:#90A4AE;--shiki-default:#90A4AE;--shiki-dark:#BABED8}html pre.shiki code .sDfIl, html code.shiki .sDfIl{--shiki-light:#39ADB5;--shiki-default:#39ADB5;--shiki-dark:#89DDFF}html pre.shiki code .s1nJG, html code.shiki .s1nJG{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .smZ93, html code.shiki .smZ93{--shiki-light:#9C3EDA;--shiki-default:#9C3EDA;--shiki-dark:#C792EA}html pre.shiki code .sRlkE, html code.shiki .sRlkE{--shiki-light:#E53935;--shiki-default:#E53935;--shiki-dark:#F07178}html pre.shiki code .sGFVr, html code.shiki .sGFVr{--shiki-light:#91B859;--shiki-default:#91B859;--shiki-dark:#C3E88D}html pre.shiki code .sWuyu, html code.shiki .sWuyu{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s52Pk, html code.shiki .s52Pk{--shiki-light:#E2931D;--shiki-default:#E2931D;--shiki-dark:#FFCB6B}html pre.shiki code .sbKd-, html code.shiki .sbKd-{--shiki-light:#FF5370;--shiki-default:#FF5370;--shiki-dark:#FF9CAC}html pre.shiki code .sYRBq, html code.shiki .sYRBq{--shiki-light:#F76D47;--shiki-default:#F76D47;--shiki-dark:#F78C6C}",{"title":3038,"searchDepth":3086,"depth":3086,"links":4582},[4583,4584,4587,4588,4589,4590,4591],{"id":3025,"depth":3086,"text":3026},{"id":3333,"depth":3086,"text":3334,"children":4585},[4586],{"id":3539,"depth":3127,"text":3540},{"id":3611,"depth":3086,"text":3612},{"id":3814,"depth":3086,"text":3815},{"id":4021,"depth":3086,"text":4022},{"id":4178,"depth":3086,"text":4179},{"id":4287,"depth":3086,"text":4288},"Nuxt предоставляет middleware для запуска кода перед переходом по заданному маршруту.","md",{"head":4595},{"title":4596},"Каталог middleware/",{"icon":156},{"title":153,"description":4592},"adJ_bMdlPWSGnCjvPxjyK41EyXor_DizTMG9suv7oLQ",[4601,4603],{"title":148,"path":149,"stem":150,"description":4602,"icon":151},"Каталог layouts/ — общие каркасы интерфейса в виде переиспользуемых лейаутов.",{"title":158,"path":159,"stem":160,"description":4604,"icon":146},"Каталог modules/ — локальные модули Nuxt с автоматической регистрацией.",1774862533257]