2017-03-15 20 views
0

で定義されていません。これは私のindex.jsファイルです:にReferenceError:NODE_ENVはエクスプレス

var express = require('express'); 
var app = express(); 
var compression = require('compression'); 
var path = require('path'); 

app.use(compression()); 
app.set('port', (process.env.PORT || 9000)); 

app.use(express.static(path.join(__dirname, 'dist'))); 
app.use('/public', express.static(path.join(__dirname, '/public'))); 

app.set('views', __dirname + '/'); 
app.set('view engine', 'ejs'); 

app.listen(app.get('port'), function() { 
    console.log('Node app is running on port', app.get('port')); 
}); 

そして、これらの建物のため、サーバーを起動する私のNPMスクリプトです:

"scripts": { 
    "start": "NODE_ENV=production node index.js", 
    "dev": "NODE_ENV=development webpack-dev-server --progress --bail --open", 
    "build": "NODE_ENV=production webpack -p --colors" 
}, 

私にはありません方法を知っているが、私はまだReferenceError: NODE_ENV is not definedを得る。誰も助けることができますか?

process.env.NODE_ENV 

の代わりに::

ReferenceError: NODE_ENV is not defined 

あなたはそれのようにそれにアクセスしようとしていたことを意味します

NODE_ENV 

あなたがエラーを取得すると

+2

:あなたは、Windowsの場合は、多分あなたはcross-env

をチェックアウトする必要があります次に、このようなあなたのpackage.jsonを変更? (投稿したコードは関連するコードではないようです。) – Frxstrem

+0

あなたはどのOSを使用していますか? – dan

+0

私はOS Xを使用しています。また、Webpackサーバーを使用しています。問題はありません。これは、コード自体に問題はないと思います。 – Lukas

答えて

0

あなたが使用する必要がありますスコープ内の変数であり、そのままprocess.envオブジェクトのプロパティではありませんでした。

+0

ここで、どのように? index.jsで私は仮定します...私もこれを試してみましたが、同じ問題があった:( – Lukas

+0

@ Lukas私はどこにあるのかわかりません。あなたが提供したコードには、 NODE_ENV' – rsp

+0

どこでもwebpackの設定(アプリケーションをビルドするために使用しています)でprocess.env.NODE_ENVを使用しています – Lukas

0

Macでは動作します。

どのOSを使用しましたか?あなたがJavaScriptコードで `NODE_ENV`を使用しない

{ 
    "scripts": { 
    "build": "cross-env NODE_ENV=production webpack --config build/webpack.config.js" 
    } 
} 
関連する問題