【问题标题】:How to load base url axios from env in nuxt js如何在nuxt js中从env加载基本url axios
【发布时间】:2021-08-19 10:16:08
【问题描述】:

首先,我有 2 个 env 文件,

env.dev

BASE_URL=xxxx

.env

BASE_URL=xxxx

我试图从我的env文件中加载BASE_URL,所以我使用nuxt/dotenvnuxt.config.js上加载env文件,像这样,

buildModules: [
  '@nuxtjs/eslint-module',
  ['@nuxtjs/dotenv', { filename: '.env' + process.env.ENV }]
],
modules: [
  '@nuxtjs/axios',
  '@nuxtjs/auth',
  '@nuxtjs/dotenv'
],
axios: {
  baseURL: process.env.BASE_URL,
  redirectError: {
    401: '/login',
    403: '/login',
    404: '/notfound'
  }
}

但是当我尝试点击 API 登录时,它总是在 .env 上指向 BASE_URL
我做错了什么?

【问题讨论】:

    标签: vue.js axios environment-variables nuxt.js


    【解决方案1】:

    我在这里写了一个关于如何使用环境变量的快速答案:https://stackoverflow.com/a/67705541/8816585

    这是关于如何使用特定.env.dev 文件的答案:https://github.com/nuxt-community/dotenv-module/issues/59#issuecomment-660646526

    yarn add -D @nuxtjs/dotenv
    

    nuxt.config.js

    modules: ['@nuxtjs/dotenv'],
    ...
    buildModules: [
      ['@nuxtjs/dotenv', 
        { filename: '.env.' + process.env.ENV }
      ]
    ],
    

    package.json(你可能错过了这个)

    "scripts": { "dev": "ENV=dev nuxt" }
    

    最后,不要忘记将它们全部添加到您的 .gitignore 文件中。

    同时,这种工作方式并不是官方dotenv项目中所述的推荐方式:https://github.com/motdotla/dotenv#should-i-have-multiple-env-files

    【讨论】:

      猜你喜欢
      • 2021-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 2020-10-31
      • 1970-01-01
      • 2019-12-13
      • 1970-01-01
      相关资源
      最近更新 更多