From 2f20a00bfb3e0b1d9ca332aff6694e9136127016 Mon Sep 17 00:00:00 2001 From: Ivan Bochkarev Date: Thu, 13 Jun 2024 10:30:01 +0600 Subject: [PATCH 1/9] =?UTF-8?q?feat(docs)=20=D0=9F=D0=B5=D1=80=D0=B5=D0=B2?= =?UTF-8?q?=D0=BE=D0=B4=20Modules?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/7.migration/20.module-authors.md | 64 +++++++++++++-------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index ff42347c12c3..dfa17e21aa8a 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -1,47 +1,47 @@ --- -title: Modules -description: 'Learn how to migrate from Nuxt 2 to Nuxt 3 modules.' +title: Модули +description: 'Изучите как мигрировать с Nuxt 2 на модули Nuxt 3' --- -## Module Compatibility +## Совместимость модулей -Nuxt 3 has a basic backward compatibility layer for Nuxt 2 modules using `@nuxt/kit` auto wrappers. But there are usually steps to follow to make modules compatible with Nuxt 3 and sometimes, using Nuxt Bridge is required for cross-version compatibility. +Nuxt 3 имеет базовый слой обратной совместимости для модулей Nuxt 2 с использованием автоматических оберток `@nuxt/kit`. Однако обычно требуются шаги для обеспечения совместимости модулей с Nuxt 3, и иногда для кросс-версионной совместимости требуется использовать Nuxt Bridge. -We have prepared a [Dedicated Guide](/docs/guide/going-further/modules) for authoring Nuxt 3 ready modules using `@nuxt/kit`. Currently best migration path is to follow it and rewrite your modules. Rest of this guide includes preparation steps if you prefer to avoid a full rewrite yet making modules compatible with Nuxt 3. +Мы подготовили [Отдельное руководство](/docs/guide/going-further/modules) по созданию готовых к Nuxt 3 модулей с использованием `@nuxt/kit`. В настоящее время лучшим путем миграции является следование этому руководству, чтобы переписать ваши модули. Оставшаяся часть этого руководства включает в себя шаги подготовки, если вы предпочитаете избежать полной переписи, но при этом сделать модули совместимыми с Nuxt 3. ::tip{icon="i-ph-puzzle-piece-duotone" to="/modules"} -Explore Nuxt 3 compatible modules. +Исследование модулей, совместимых с Nuxt 3 :: -### Plugin Compatibility +### Совместимость плагинов -Nuxt 3 plugins are **not** fully backward compatible with Nuxt 2. +Плагины Nuxt 3 имеют **не** полностью обратную совместимость с Nuxt 2. :read-more{to="/docs/guide/directory-structure/plugins"} -### Vue Compatibility +### Совместимость с Vue -Plugins or components using the Composition API need exclusive Vue 2 or Vue 3 support. +Плагины или компоненты, использующие API Composition, требуют исключительной поддержки Vue 2 или Vue 3. -By using [vue-demi](https://github.com/vueuse/vue-demi) they should be compatible with both Nuxt 2 and 3. +Используя [vue-demi](https://github.com/vueuse/vue-demi), они должны быть совместимы с Nuxt 2 и 3. -## Module Migration +## Миграция модулей -When Nuxt 3 users add your module, you will not have access to the module container (`this.*`) so you will need to use utilities from `@nuxt/kit` to access the container functionality. +Когда пользователи Nuxt 3 добавляют ваш модуль, у вас не будет доступа к контейнеру модуля (`this.*`), поэтому вам необходимо использовать утилиты из `@nuxt/kit`, чтобы получить доступ к функционалу контейнера. -### Test with `@nuxt/bridge` +### Тестирование с `@nuxt/bridge` -Migrating to `@nuxt/bridge` is the first and most important step for supporting Nuxt 3. +Миграция к `@nuxt/bridge` является первым и самым важным шагом для поддержки Nuxt 3. -If you have a fixture or example in your module, add `@nuxt/bridge` package to its config (see [example](/docs/bridge/overview#update-nuxtconfig)) +Если у вас есть фикстура или пример в вашем модуле, добавьте пакет `@nuxt/bridge` в его конфигурацию (см. [пример](/docs/bridge/overview#update-nuxtconfig)) -### Migrate from CommonJS to ESM +### Миграция из CommonJS в ESM -Nuxt 3 natively supports TypeScript and ECMAScript Modules. Please check [Native ES Modules](/docs/guide/concepts/esm) for more info and upgrading. +Nuxt 3 нативно поддерживает TypeScript и модули ECMAScript. Пожалуйста, проверьте [Native ES Modules](/docs/guide/concepts/esm) для получения дополнительной информации и обновления. -### Ensure Plugins Default Export +### Обеспечение экспорта плагинов по умолчанию -If you inject a Nuxt plugin that does not have `export default` (such as global Vue plugins), ensure you add `export default () => { }` to the end of it. +Если вы внедряете плагин Nuxt, который не имеет `export default` (например, глобальные плагины Vue), убедитесь, что вы добавили `export default () => { }` в конец файла. ::code-group @@ -65,30 +65,30 @@ export default () => { } :: -### Avoid Runtime Modules +### Избегайте Runtime модулей -With Nuxt 3, Nuxt is now a build-time-only dependency, which means that modules shouldn't attempt to hook into the Nuxt runtime. +В Nuxt 3 Nuxt теперь является зависимостью только во время сборки, что означает, что модули не должны пытаться подключиться к среде выполнения Nuxt. -Your module should work even if it's only added to [`buildModules`](/docs/api/nuxt-config#runtimeconfig) (instead of `modules`). For example: +Ваш модуль должен работать даже в том случае, если он добавлен только в [`buildModules`](/docs/api/nuxt-config#runtimeconfig) (а не в `modules`). Например: -- Avoid updating `process.env` within a Nuxt module and reading by a Nuxt plugin; use [`runtimeConfig`](/docs/api/nuxt-config#runtimeconfig) instead. -- (*) Avoid depending on runtime hooks like `vue-renderer:*` for production -- (*) Avoid adding `serverMiddleware` by importing them inside the module. Instead, add them by referencing a file path so that they are independent of the module's context +- Избегайте обновления `process.env` внутри модуля Nuxt и чтения его с помощью плагина Nuxt. Вместо этого используйте [`runtimeConfig`](/docs/api/nuxt-config#runtimeconfig). +- (*) Избегайте зависимости от хуков runtime, таких как `vue-renderer:*` для продакшена +- (*) Избегайте добавления `serverMiddleware` путем импорта их внутри модуля. Вместо этого добавляйте их с помощью ссылки на путь к файлу, чтобы они были независимы от контекста модуля. -(*) Unless it is for `nuxt dev` purpose only and guarded with `if (nuxt.options.dev) { }`. +(*) Если это необходимо только для целей `nuxt dev` и защищено с помощью `if (nuxt.options.dev) { }`. ::tip -Continue reading about Nuxt 3 modules in the [Modules Author Guide](/docs/guide/going-further/modules). +Продолжайте изучение о модулях Nuxt 3 в [Руководстве для авторов модулей](/docs/guide/going-further/modules). :: -### Use TypeScript (Optional) +### Используйте TypeScript (опционально) -While it is not essential, most of the Nuxt ecosystem is shifting to use TypeScript, so it is highly recommended to consider migration. +Хотя это и не является обязательным, большая часть экосистемы Nuxt переходит на использование TypeScript, поэтому рекомендуется рассмотреть возможность миграции. ::tip -You can start migration by renaming `.js` files, to `.ts`. TypeScript is designed to be progressive! +Вы можете начать миграцию, переименовав файлы `.js` в `.ts`. TypeScript разработан для постепенного внедрения! :: ::tip -You can use TypeScript syntax for Nuxt 2 and 3 modules and plugins without any extra dependencies. +Вы можете использовать синтаксис TypeScript для модулей и плагинов Nuxt 2 и 3 без каких-либо дополнительных зависимостей. :: From 88dc2af38e5bed6744d0b74b6765e65119fd5f95 Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 11:02:21 +0600 Subject: [PATCH 2/9] Update docs/7.migration/20.module-authors.md Co-authored-by: Evgeniy Gromin --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index dfa17e21aa8a..20123cecfe01 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -78,7 +78,7 @@ export default () => { } (*) Если это необходимо только для целей `nuxt dev` и защищено с помощью `if (nuxt.options.dev) { }`. ::tip -Продолжайте изучение о модулях Nuxt 3 в [Руководстве для авторов модулей](/docs/guide/going-further/modules). +Продолжайте читать о модулях Nuxt 3 в [Руководстве для авторов модулей](/docs/guide/going-further/modules). :: ### Используйте TypeScript (опционально) From a09e7ba0ae875dd77e17d7b859f1e6cdc89c91aa Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 11:02:25 +0600 Subject: [PATCH 3/9] Update docs/7.migration/20.module-authors.md Co-authored-by: Evgeniy Gromin --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index 20123cecfe01..158670b994fc 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -5,7 +5,7 @@ description: 'Изучите как мигрировать с Nuxt 2 на мод ## Совместимость модулей -Nuxt 3 имеет базовый слой обратной совместимости для модулей Nuxt 2 с использованием автоматических оберток `@nuxt/kit`. Однако обычно требуются шаги для обеспечения совместимости модулей с Nuxt 3, и иногда для кросс-версионной совместимости требуется использовать Nuxt Bridge. +Nuxt 3 имеет базовый слой обратной совместимости для модулей Nuxt 2 с использованием автоматических оберток `@nuxt/kit`. Однако обычно требуются шаги для обеспечения совместимости модулей с Nuxt 3, и иногда, для кросс-версионной совместимости, требуется использовать Nuxt Bridge. Мы подготовили [Отдельное руководство](/docs/guide/going-further/modules) по созданию готовых к Nuxt 3 модулей с использованием `@nuxt/kit`. В настоящее время лучшим путем миграции является следование этому руководству, чтобы переписать ваши модули. Оставшаяся часть этого руководства включает в себя шаги подготовки, если вы предпочитаете избежать полной переписи, но при этом сделать модули совместимыми с Nuxt 3. From af9ca1e0cae7240de3d31af07c8c92d71d2b2436 Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 11:02:30 +0600 Subject: [PATCH 4/9] Update docs/7.migration/20.module-authors.md Co-authored-by: Evgeniy Gromin --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index 158670b994fc..3468b7b8586f 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -21,7 +21,7 @@ Nuxt 3 имеет базовый слой обратной совместимо ### Совместимость с Vue -Плагины или компоненты, использующие API Composition, требуют исключительной поддержки Vue 2 или Vue 3. +Плагины или компоненты, использующие Composition API, требуют исключительной поддержки Vue 2 или Vue 3. Используя [vue-demi](https://github.com/vueuse/vue-demi), они должны быть совместимы с Nuxt 2 и 3. From 0ab17e92ac7a096f2c6b2bbd3fd6b745cc3b060a Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 11:02:35 +0600 Subject: [PATCH 5/9] Update docs/7.migration/20.module-authors.md Co-authored-by: Evgeniy Gromin --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index 3468b7b8586f..941533542464 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -75,7 +75,7 @@ export default () => { } - (*) Избегайте зависимости от хуков runtime, таких как `vue-renderer:*` для продакшена - (*) Избегайте добавления `serverMiddleware` путем импорта их внутри модуля. Вместо этого добавляйте их с помощью ссылки на путь к файлу, чтобы они были независимы от контекста модуля. -(*) Если это необходимо только для целей `nuxt dev` и защищено с помощью `if (nuxt.options.dev) { }`. +(*) Пока это не предназначено только для целей `nuxt dev` и не защищено с помощью `if (nuxt.options.dev) { }`. ::tip Продолжайте читать о модулях Nuxt 3 в [Руководстве для авторов модулей](/docs/guide/going-further/modules). From 1e1c54930d4a56b3a2ba0987d892b5834fe90f48 Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 11:02:41 +0600 Subject: [PATCH 6/9] Update docs/7.migration/20.module-authors.md Co-authored-by: Evgeniy Gromin --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index 941533542464..f2262b6ea470 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -10,7 +10,7 @@ Nuxt 3 имеет базовый слой обратной совместимо Мы подготовили [Отдельное руководство](/docs/guide/going-further/modules) по созданию готовых к Nuxt 3 модулей с использованием `@nuxt/kit`. В настоящее время лучшим путем миграции является следование этому руководству, чтобы переписать ваши модули. Оставшаяся часть этого руководства включает в себя шаги подготовки, если вы предпочитаете избежать полной переписи, но при этом сделать модули совместимыми с Nuxt 3. ::tip{icon="i-ph-puzzle-piece-duotone" to="/modules"} -Исследование модулей, совместимых с Nuxt 3 +Изучите модули, совместимые с Nuxt 3. :: ### Совместимость плагинов From 53783070286b65244759686ecf8fda5c45061f38 Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 12:30:05 +0600 Subject: [PATCH 7/9] Update docs/7.migration/20.module-authors.md Co-authored-by: alexeyvokin --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index f2262b6ea470..a8f3fbb99692 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -67,7 +67,7 @@ export default () => { } ### Избегайте Runtime модулей -В Nuxt 3 Nuxt теперь является зависимостью только во время сборки, что означает, что модули не должны пытаться подключиться к среде выполнения Nuxt. +В Nuxt 3 сам Nuxt теперь является зависимостью только во время сборки, что означает, что модули не должны пытаться подключиться к среде выполнения Nuxt. Ваш модуль должен работать даже в том случае, если он добавлен только в [`buildModules`](/docs/api/nuxt-config#runtimeconfig) (а не в `modules`). Например: From 2b6d49ebbc3dcd37757f5b2a17a87e0d73141b5a Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 18:37:50 +0600 Subject: [PATCH 8/9] Update docs/7.migration/20.module-authors.md Co-authored-by: Artem <90565172+Hekikai@users.noreply.github.com> --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index a8f3fbb99692..f7611ccaa8a5 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -5,7 +5,7 @@ description: 'Изучите как мигрировать с Nuxt 2 на мод ## Совместимость модулей -Nuxt 3 имеет базовый слой обратной совместимости для модулей Nuxt 2 с использованием автоматических оберток `@nuxt/kit`. Однако обычно требуются шаги для обеспечения совместимости модулей с Nuxt 3, и иногда, для кросс-версионной совместимости, требуется использовать Nuxt Bridge. +Nuxt 3 имеет базовый слой обратной совместимости для модулей Nuxt 2 с использованием автоматических оберток `@nuxt/kit`. Однако, обычно требуются шаги для обеспечения совместимости модулей с Nuxt 3, и иногда - для кросс-версионной совместимости - требуется использовать Nuxt Bridge. Мы подготовили [Отдельное руководство](/docs/guide/going-further/modules) по созданию готовых к Nuxt 3 модулей с использованием `@nuxt/kit`. В настоящее время лучшим путем миграции является следование этому руководству, чтобы переписать ваши модули. Оставшаяся часть этого руководства включает в себя шаги подготовки, если вы предпочитаете избежать полной переписи, но при этом сделать модули совместимыми с Nuxt 3. From 0b2ff42d478295932c63f168c1c12dd0f0f2f882 Mon Sep 17 00:00:00 2001 From: Bochkarev Ivan Date: Thu, 13 Jun 2024 18:38:11 +0600 Subject: [PATCH 9/9] Update docs/7.migration/20.module-authors.md --- docs/7.migration/20.module-authors.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/7.migration/20.module-authors.md b/docs/7.migration/20.module-authors.md index f7611ccaa8a5..b0dae199bcfc 100644 --- a/docs/7.migration/20.module-authors.md +++ b/docs/7.migration/20.module-authors.md @@ -1,6 +1,6 @@ --- title: Модули -description: 'Изучите как мигрировать с Nuxt 2 на модули Nuxt 3' +description: 'Изучите как мигрировать модули с Nuxt 2 на Nuxt 3' --- ## Совместимость модулей