我在Heroku上运行了几个应用程序,即使我在heroku的环境变量中将其手动设置为production
,似乎NODE_ENV始终设置为development
。
在部署时,我会在日志中看到这一点:
-----> Creating runtime environment
NPM_CONFIG_LOGLEVEL=error
NPM_CONFIG_PRODUCTION=false
NODE_ENV=development
NODE_MODULES_CACHE=true
NODE_VERBOSE=false
因此,似乎已正确设置了NODE_ENV,但该应用程序的行为就像是将其设置为production
。
是否可以在heroku上覆盖NODE_ENV?
谢谢。
编辑:
这是我正在使用的代码。
let AUTH_URL = 'https://development.com';
if (process.env.NODE_ENV === 'development') {
AUTH_URL = 'https://development.com'
} else if (process.env.NODE_ENV === 'staging') {
AUTH_URL = 'https://staging.com'
} else if (process.env.NODE_ENV === 'production') {
AUTH_URL = 'https://production.com'
}
export {
AUTH_URL
}
然后, AUTH_URL在其他脚本中用作进行API调用的基本URL。我将NODE_ENV环境变量设置为开发,但是无论heroku上NODE_ENV的值如何,所设置的URL始终为https://production.com
。这是在heroku上设置的环境变量的屏幕截图