如何将 nuxt.config.js 中的 .env 值与运行时配置一起使用

Posted

技术标签:

【中文标题】如何将 nuxt.config.js 中的 .env 值与运行时配置一起使用【英文标题】:How to use .env value in nuxt.config.js with runtime config 【发布时间】:2021-11-02 19:47:34 【问题描述】:

我正在搜索。

声明它,在“正常”代码中使用它是可以的。

  publicRuntimeConfig: 
    URL_API: process.env.URL_API || 'http://localhost:8000/',
  ,

但我想在我的 nuxt.config.js 中使用这样的 .env 值

  auth: 
    strategies: 
      local: 
        token: 
          property: 'token',
          required: true,
          maxAge: 1000 * 60 * 60
        ,
        user: 
          property: 'user',
          autoFetch: false
        ,
        clientID: true,
        endpoints: 
          login:  url: `$process.env.URL_API/auth/login`, method: 'post' ,
          logout:  url: `$process.env.URL_API/auth/logout`, method: 'post' ,
        ,
        tokenType: ''
      
    ,
    redirect: 
      login: '/auth/login',
      logout: '/',
      callback: '/auth/login',
      home: '/'
    
  ,

有什么想法吗?

【问题讨论】:

【参考方案1】:

正如我在此处的回答中所解释的那样:https://***.com/a/67705541/8816585

如果你有一些模块位于nuxt.config.js,你只能通过process.env.MY_VARIABLE传递环境变量。 如果您要链接到外部文件,它就可以工作。

【讨论】:

【参考方案2】:

您可以使用 dotenv 包来使用 nuxt.config.js 中 .env 文件中的变量。

nuxt.config.js 文件应如下所示:

// your imports here

require('dotenv').config()

// nuxt config here

【讨论】:

在 NuxtJS 中,有运行时配置,允许我们不使用 dotenv。我正在寻找将 .env 与运行时配置一起使用,而不是 dotenv 包 请不要使用dotenv,因为它已经烤好了。

以上是关于如何将 nuxt.config.js 中的 .env 值与运行时配置一起使用的主要内容,如果未能解决你的问题,请参考以下文章

如何使用nuxt js将字体嵌入到所有页面

nuxt.config.js 中的条件属性

如何在 Nuxt 的 nuxt.config.js 中导入 mdi 图标模块

如何将第 3 方脚本代码添加到 Nuxt?

如何在 nuxt-i18n 文本中包含链接

如何让Nuxt-auth和Nuxt-i18n成为好友