1
这是我的生产环境的webpack配置。TypeError:webpack.LoaderOptionsPlugin不是函数
var path = require('path');
var webpack = require('webpack');
var precss = require('precss');
var autoprefixer = require('autoprefixer');
var SaveAssetsJson = require('assets-webpack-plugin');
...
console.log('Build optimized for production\n');
config.output.filename = '[hash].plan.js';
config.module.loaders.push({
test: /\.js$/,
loaders: ['babel'],
exclude: /node_modules/,
include: path.join(__dirname, 'app'),
});
它通过npm/package.json被使用。在package.json
scripts
部分,这里是build
目标:
"build": "NODE_ENV=production webpack -p --config webpack.config.js",
现在我想关闭输出脚本丑化特定环境主要用于调试的目的。
这是我的新的额外的WebPack配置:
switch (process.env.NODE_ENV) {
case 'staging':
console.log(`Build optimized for ${process.env.NODE_ENV}\n`);
config.output.filename = '[hash].plan.js';
config.module.loaders.push({
test: /\.js$/,
loaders: ['babel'],
exclude: /node_modules/,
include: path.join(__dirname, 'app'),
});
config.plugins = [
new webpack.LoaderOptionsPlugin({
minimize: true,
debug: false
}),
new webpack.optimize.UglifyJsPlugin({
beautify: false,
comments: false
})
]
break;
...
内的package.json相关依赖
assets-webpack-plugin": "3.5.0",
"webpack": "1.13.3",
我复制插件从文档的WebPack这里https://webpack.js.org/guides/production-build/
配置然而,当我跑npm run build:staging
,我得到这个错误:
> [email protected] build:staging /Users/antkong/project
> NODE_ENV=staging webpack --config webpack.config.js
Build optimized for staging
/Users/antkong/project/webpack.config.js:82
new webpack.LoaderOptionsPlugin({
^
中的package.json相应的命令:
"build:staging": "NODE_ENV=staging webpack --config webpack.config.js",
我错过了什么?有没有我应该安装的任何开发依赖项?