2016-10-28 24 views
0

アプリケーションを読み込もうとしているときに、ブラウザコンソールで次のエラーが表示されます。誰も反応を見つけることができない理由を説明することはできますか?Uncaught ReferenceError:反応が定義されていませんwebpack

Uncaught ReferenceError: react is not defined

私は私のコードをバンドルするのWebPACKを使用しています。バンドル自体は大丈夫です。

のWebPACKの設定:

var path = require('path'); 
var webpack = require('webpack'); 

module.exports = { 
    devtool: 'eval-source-map', 
    entry: [ 
    path.join(__dirname, 'src/client/app.js'), 
    path.join(__dirname, 'src/client/assets/styles/main.less') 
    ], 
    output: { 
    path: path.join(__dirname, '/dist/'), 
    filename: "bundle.js" 
    }, 
    module: { 
    loaders: [ 
     { 
     test: /.jsx?$/, 
     loader: 'babel-loader', 
     exclude: /node_modules/, 
     query: { 
      presets: ['es2015', 'react', 'stage-2'] 
     } 
     }, 
     { 
     test: /\.json$/, 
     loader: 'json-loader' 
     }, 
     { 
     test: /\.less$/, 
     loader: "style!css!less" 
     } 
    ] 
    }, 
    watch: true, 
    node: { 
    fs: 'empty', 
    net: 'empty', 
    tls: 'empty' 
    }, 
    externals: /^[a-z\-0-9]+$/ 
}; 

おかげ

+0

をあなたが表示する必要があなたのコードの詳細。あなたはあなたのソースコードで反応することを要求していますか? –

+0

@JoeAttardiが言ったことは、あなたのpackage.jsonのコピーは素晴らしいでしょう – finalfreq

+0

おそらくあなたはbabel-preset-reactをインストールするのを忘れていますか? npm install --save-dev babel-preset-react – Doppio

答えて

-1

は、あなたのwebpack.config.jsにこれを追加してください:

externals: { 
    "react": "React" 
} 

それとも、ReactDOM使用する場合:

externals: { 
    "react": "React", 
    "react-dom": "ReactDOM" 
} 
+0

これはバンドルから除外され、OPエラーが発生する原因となります。これは、WebpackにReactをバンドルしないように指示しますが、Reactがグローバルに利用可能になることを期待します(ブラウザでは 'window.React')。 – jkinz

関連する問題