webpackを使用して、ES6で書かれたモジュールをバンドルします。 json-immutableプラグインを追加するまでは、すべて動作しています。そこに必要なことはjson-stream-stringify
で、クラスがあります:webpack 2 uglifyプラグインES6
class JSONStreamify extends CoStream {...}
module.exports = function(obj, replacer) {
return new JSONStreamify(obj, replacer);
};
WebPACKのは、良い作品が、私はここにモジュールhttps://github.com/webpack-contrib/uglifyjs-webpack-pluginについての情報を見つけUglifyスローエラー
Unexpected token: name (JSONStreamify)
ので、ファイルをmonifyありません。私はecma
のサポートをインストールして追加しましたが、私は同じエラーがあります。私はトライを削除しましたが、除外node_modulesを追加しようとしましたが、結果はありません。
私webpack.config.jsは
const path = require('path');
const webpack = require('webpack');
const UglifyJSPlugin = require('uglifyjs-webpack-plugin');
module.exports = {
entry: {
backend: './src/backend.js',
frontend: './src/frontend.js',
},
output: {
path: path.resolve(__dirname,'./dist'),
filename: '[name].sakui.min.js'
},
externals: {
'jQuery':'jQuery',
'Foundation':'Foundation',
'react': 'React',
'react-dom': 'ReactDOM',
'redux': 'Redux',
'react-redux': 'ReactRedux',
'immutable': 'Immutable',
'lodash': '_',
'_': '_'
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader',
options: {
"only": "src/**",
"presets": [
"env",
"react",
"es2017",
"stage-3"
],
"plugins": [["transform-class-properties", { "spec": true }],"transform-decorators-legacy","minify-simplify"],
"babelrc": false
}
}
}
]
},
plugins: [
new UglifyJSPlugin({
ecma: 6
})
]
}
私はこの問題を解決することができますどのように任意のヒントですか?ウェブパック後にファイルを縮小するための外部ツールはありますか?
UglifyはES6を非常にうまく理解していません。あなたには2つのオプションがあり、ES5&Uglifyに移行するか、Uglifyを使用せず、Babel独自のUglifyerを使用します。 (Babili) – Keith
webpackオプションを追加してES5 only node_modulesにトランスクリアすることはできますか? (babiliがうまくいくかチェックします) – jaroApp
私はwebpackファイルからuglifyプラグインを削除しますが、まだこのエラーがあります。 キャッシュをクリアする必要がありますか?私はそれが正しいwebpack.configファイルを使用して参照してください – jaroApp