在if-else中看不到process.env.NODE_ENV

console.log显示process.env.NODE_ENV productionI'm in if-statement在控制台I'm in if-statement ,为什么我不能赶上“其他语句”? 用逻辑解释我必须在其他语句。

 console.log('process.env.NODE_ENV', process.env.NODE_ENV) if (process.env.NODE_ENV !== 'production') { const webpackMiddleware = require('webpack-dev-middleware'); const webpack = require('webpack'); const webpackConfig = require('./webpack.config.js'); app.use(webpackMiddleware(webpack(webpackConfig))); console.log('I\'m in if-statement'); } else { app.use(express.static('dist')); console.log('__dirname', __dirname); app.get('*', (req, res) => { res.sendFile(path.join(__dirname, 'dist/index.html')); }) console.log('I\'m in else-statement'); } 

在控制台我键入set NODE_ENV=production && node server.js

当你运行set NODE_ENV=production && node server.jsprocess.env.NODE_ENV被设置为production

production后有blank 。 你可以添加console.log('[' + process.env.NODE_ENV + ']'); 在你的文件中进行testing。