在不同的环境中打包nuxt应用

时间:2019-04-05 08:46:02

标签: vue.js vuejs2 nuxt.js

我想在环境中运行npm run generate

例如:

package.json

"scripts": {
    "staging": "NODE_ENV=staging nuxt generate"
}

使用以下方式在暂存环境中生成dist/

npm run staging

然后在请求API时,我想确定要使用的URL取决于我所运行的环境

let baseURL = () => {
  switch (process.env.NODE_ENV) {
    case "it":
      return "https://example-url.com/it";
    case "staging":
      return "https://example-url.com/staging";
  }
};

const axiosClient = axios.create({
  baseURL: baseURL(),
  headers: {
    Accept: "application/json",
    "Content-Type": "application/json",
    "X-Api-Key": state().token
  }
});

baseURL()应该返回阶段,因为我将应用程序打包为阶段环境

1 个答案:

答案 0 :(得分:0)

将我的应用程序部署到s3时。我想在附加了环境的情况下部署代码,以便应用程序知道要调用的URL。我设法通过在 package.json

中添加它来做到这一点
    "generate": "NUXT_ENV_STAGE=it nuxt generate",

根据此https://nuxtjs.org/api/configuration-env/#automatic-injection-of-environment-variables