如何让vue-cli-service在process.env.VUE_APP_*环境变量之一无法解析的情况下失败?

问题描述 投票:1回答:1

我在我的代码中使用了环境变量,就像本书中解释的那样。vue-cli服务环境变量部分当环境变量被定义时,它肯定会工作。

但是当其中一个环境变量未定义时,它就会用undefined代替。

比方说,如果我引入一个新的 process.env.VUE_APP_MY_NEW_VAR但我不在环境中设置它,它就会把一个 undefined 那里。

我想确保在构建项目时(npx vue-cli-service build [...]),没有一个环境变量是未定义的。

我的一个想法是检查 undefined 总是,但这将发生在运行时,而不是编译时。

另一个想法是创建一个shell脚本,在编译前检查所有的变量是否被设置,但这听起来很手动。

有没有办法配置它,并使它成为构建的一部分?

javascript vue.js webpack environment-variables vue-cli-3
1个回答
1
投票

你可以添加一个检查在 vue.config.js. 例如

const REQUIRED_ENV_VARS = [
  'VUE_APP_VAR_1',
  'VUE_APP_VAR_2'
]

if (REQUIRED_ENV_VARS.some(env => typeof process.env[env] === 'undefined')) {
  throw new Error('Required environment variables are missing')
}
© www.soinside.com 2019 - 2024. All rights reserved.