Universal中的NODE_ENV为“无”,但process.env显示为“生产”

时间:2019-06-22 00:01:23

标签: node.js angular

我有一个Angular Universal构建,该构建使用Webpack捆绑server.ts文件。我知道配置集mode: none设置为NODE_ENV为无。令我感到困惑的是,我在服务器构建命令之前有cross-env NODE_ENV=production,并且正在运行console.log,并且显示:

console.log(process.env.NODE_ENV) // none
console.log(process.env) // {..., NODE_ENV: production, ... }

我正在使用heroku local

运行服务器

1 个答案:

答案 0 :(得分:0)

在Anuglar Universal版本中,webpack.server.config.js设置了mode: none,将NODE_ENV替换为'none'

执行此替换的方法实际上是将所有对process.env.NODE_ENV的引用替换为字符串"none",而不是直接设置process.env值:

// In server.ts
const nodeEnv = process.env.NODE_ENV;

// In the transpiled webpack bundled server.js
var nodeEnv = "none";