项目环境配置

开发依赖安装yargs和inquirer

npm install --save-dev yargs
npm install --save-dev inquirer

package.json中配置

    "dev": "node getBuildEnv.js development && npm run serve",
    "start": "node getBuildEnv.js production && npm run serve",
    "build:choose": "node getBuildEnv.js production && npm run build",
    "build:dev": "node getBuildEnv.js production dev&& npm run build",
    "build:test": "node getBuildEnv.js production test&& npm run build",
    "build:pre": "node getBuildEnv.js production pre&& npm run build",
    "build:public": "node getBuildEnv.js production public&& npm run build",

新建getBuildEnv.js

const yargs = require("yargs");
const inquirer = require("inquirer");
const fs = require("fs");
const enviroment = require("./environment");
const getBuildEnv = async () => {
  let buildEnv = process.argv[3];
  const choices = Object.keys(enviroment);
  if (choices.includes(buildEnv)) {
    return buildEnv;
  }
  const commander = yargs.option("buildEnv", {
    describe: "build enviroment",
    type: "string",
    choices
  });
  buildEnv = commander.buildEnv;
  if (!buildEnv) {
    const answer = await inquirer.prompt([
      {
        type: "list",
        name: "buildEnv",
        message: "请选择环境:",
        choices
      }
    ]);
    buildEnv = answer.buildEnv;
  }
  return buildEnv;
};
getBuildEnv().then(env => {
  try {
    fs.writeFileSync(
      `.env.${process.argv[2]}`,
      `NODE_ENV=${process.argv[2]}
VUE_APP_API_BASE_URL=${enviroment[env]}`
    );
  } catch (err) {
    throw err;
  }
});

新建environment.js配置路径

module.exports = {
  dev: "http://192.168.20.12:8888/prod",
  test: "http://192.168.20.14:8888/prod",
  pre: "http://192.168.20.14:8666/prod",
  publish: "http://192.168.20.14:8666/prod"
};

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值