Runtime-конфигурация
Миграция runtime-конфигурации с Nuxt 2 на Nuxt 3.
Чтобы использовать переменные окружения в приложении Nuxt 3, нужен runtime config.
В компонентах используйте композабл useRuntimeConfig в setup (или в плагине Nuxt).
В коде в server/ композабл useRuntimeConfig доступен без импорта.
Миграция
- Перенесите используемые переменные окружения в свойство
runtimeConfigвnuxt.config. - Замените
process.envнаuseRuntimeConfigво всей Vue-части приложения.
export default defineNuxtConfig({
runtimeConfig: {
// Приватный конфиг, только на сервере
apiSecret: '123',
// public доступен и на клиенте
public: {
apiBase: '/api',
},
},
})
<script setup lang="ts">
const config = useRuntimeConfig()
// вместо process.env используйте config.public.apiBase
console.log(config.public.apiBase)
</script>
export default defineEventhandler((event) => {
const config = useRuntimeConfig(event)
// На сервере доступны config.apiSecret и config.public
console.log(config.apiSecret)
console.log(config.public.apiBase)
})
# Значения runtime config подставляются из переменных окружения при запуске
NUXT_API_SECRET=api_secret_token
NUXT_PUBLIC_API_BASE=https://nuxtjs.org