我在我的代码中使用了环境变量,就像本书中解释的那样。vue-cli服务环境变量部分当环境变量被定义时,它肯定会工作。
但是当其中一个环境变量未定义时,它就会用undefined代替。
比方说,如果我引入一个新的 process.env.VUE_APP_MY_NEW_VAR
但我不在环境中设置它,它就会把一个 undefined
那里。
我想确保在构建项目时(npx vue-cli-service build [...]
),没有一个环境变量是未定义的。
我的一个想法是检查 undefined
总是,但这将发生在运行时,而不是编译时。
另一个想法是创建一个shell脚本,在编译前检查所有的变量是否被设置,但这听起来很手动。
有没有办法配置它,并使它成为构建的一部分?
你可以添加一个检查在 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')
}