2017-06-30 16 views
1

console.logコンソールにprocess.env.NODE_ENV productionI'm in if-statementが表示されますが、なぜ "else-statement"をキャッチできないのですか?論理の説明では、私はelse文でなければなりません。私はset NODE_ENV=production && node server.jsif-else内のprocess.env.NODE_ENVを見ることができません

+0

'process.env.NODE_ENV'に空白がありませんか? – robertklep

+0

ありがとう、男は入力セットNODE_ENV =生産&&ノードserver.js、それは –

答えて

1

を入力し、コンソールで

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を実行すると、process.env.NODE_ENVproductionに設定されています。

productionの後にblankがあります。テストのためにファイルにconsole.log('[' + process.env.NODE_ENV + ']');を追加することができます。

+0

働いてくれた –

関連する問題