node.js - Universal 中的 NODE_ENV 为“无”,但 process.env 显示“生产”
问题描述
我有一个 Angular Universal 构建,它使用 Webpack 来捆绑server.ts
文件。我知道设置为无的配置mode: none
集NODE_ENV
。令我困惑的是,我cross-env NODE_ENV=production
在 server build 命令之前有一个 console.log 正在运行,它正在显示:
console.log(process.env.NODE_ENV) // none
console.log(process.env) // {..., NODE_ENV: production, ... }
我正在使用运行服务器heroku local
解决方案
在Angular Universal 构建中,webpack.server.config.js
设置为 'none'mode: none
NODE_ENV
它进行这种替换的方式实际上是将任何对的引用替换为process.env.NODE_ENV
string "none"
,而不是process.env
直接设置值:
// In server.ts
const nodeEnv = process.env.NODE_ENV;
// In the transpiled webpack bundled server.js
var nodeEnv = "none";
推荐阅读
- javascript - Angular 从 firebase 存储中获取 files.length
- javascript - 为什么 getDataRange.getValues() 没有提取所有必需的值?
- node.js - nodejs+mongodb原生驱动+ExpressJS Rest API-一次连接,复用设计建议
- javascript - 如何使用 Ajax 一键提交两个表单
- assembly - NASM:如何正确访问 ssd 驱动器?
- asp.net - 在 Razor Pages 表单中上传文件时出现可选问题
- flutter - 在 Flutter 中添加新文本行的问题
- c# - 如何在 MainLayout 中获取输入参数?
- php - MacOS Laravel Valet 增加 memory_limit
- macos - 在 MacOSX 上找不到“dotnet”时让 F# 在 VSCode 中工作?