webappを使用してWebアプリケーション(React + ES6)をバインドしてパッケージ化しようとしています。しかし、webpack-dev-serverを実行してページを取得するたびにbundle.js:1 Uncaught ReferenceError: exports is not defined
私は間違っていますか?ここでUncaught ReferenceError:エクスポートが定義されていません
は私のWebPACKの構成である:ここで
var webpack = require('webpack');
module.exports = {
entry : [
'./lib/index.js'
],
output : {
path : __dirname + '/dist/',
libraryTarget: 'commonjs',
filename : 'bundle.js'
},
plugins : [
new webpack.NoErrorsPlugin()
],
devtool: 'eval',
module : {
loaders : [
{
test : /\.js$/,
loaders : [
'react-hot',
'babel'
],
exclude : /node_modules/
},
{
test : /\.(jpe?g|png|gif|svg)$/i,
loaders : [
'url?limit=8192',
'img'
]
},
{
test : /\.scss$/,
include : /styles/,
loaders : [
'style',
'css',
'sass'
]
}
]
},
resolve : {
extensions : ['', '.js', '.json']
},
externals : ['request']
};
は私のpackage.jsonは
{
"presets": ["es2015", "react"]
}
.babelrc
{
...
"dependencies": {
"babel-core": ": ^6.0.0",
"lodash": ": ^4.6.0",
"react-dom": ": ^0.14.0",
"react-redux": ": ^4.0.0",
"react": ": ^0.14.0",
"redux-devtools": ": ^2.1.5",
"redux-thunk": ": ^1.0.0",
"redux": ": ^3.0.4",
"request": ": ^2.69.0"
},
"devDependencies": {
"babel-loader": ": ^6.1.0",
"babel-preset-es2015": ": ^6.6.0",
"babel-preset-react": ": ^6.5.0",
"css-loader": ": ^0.23.0",
"file-loader": ": ^0.8.4",
"gulp": "^3.9.1",
"gulp-babel": "^6.1.2",
"img-loader": ": ^1.2.0",
"node-sass": ": ^3.2.0",
"react-hot-loader": ": ^1.3.0",
"sass-loader": ": ^3.1.2",
"style-loader": ": ^0.13.0",
"webpack": ": ^1.12.9",
"webpack-dev-server": ": ^1.14.1"
},
...
}
のWebPACK-devのサーバー
var webpack = require('webpack'),
WebpackDevServer = require('webpack-dev-server'),
config = require('../webpack.config.js');
new WebpackDevServer(webpack(config), {
publicPath: config.output.publicPath,
hot: true,
historyApiFallback: true
}).listen(8081, 'localhost', function (err, result) {
if (err) {
console.log(err);
}
console.log('Listening at localhost:8081');
});
です
gulpfile
var gulp = require('gulp'),
babel = require('gulp-babel');
gulp.task('babel', function() {
return gulp.src('src/**/*.js').pipe(babel({
presets : ['es2015', 'react']
})).pipe(gulp.dest('lib'));
});
gulp.task('default', ['babel']);
おかげでラインを下ろす。実行されるサーバスクリプトは、configの代わりにスクリプトを介して実行された 'webpack-dev-server'です。私はそれを追加します。しかし、私はまだ同じ問題を抱えています。私はpackage.jsonとwebpack.configを更新しました。 – HerrPfister
これを打つと、.babelrcファイルが見つからない可能性があります。プロジェクトのルートに以下の内容を追加してください。 { \tが「プリセット」:[「es2015」、「反応する」]、 } –
はだから、.babelrcを添加し反応してes2015ためのプリセットをインストールし、その後もインストールグッと飲み込む-バベルを。私は新しいファイルを追加し、これを反映するためにWeb Packを更新しました。私はgulp babelを実行し、ファイルをトランスポートして/ lib /に保存し、webpackを実行して、babelされたファイルをバンドルし、バンドルをdistに格納します。私は/dist/bundle.jsを参照するように私のHTMLを更新しましたが、私はまだエクスポートエラーを取得します。何か案は?助けてくれてありがとう。 – HerrPfister