webpack.DefinePlugin 无法识别并且 devtool: 'cheap-module-source-map 不工作
webpack.DefinePlugin is not recognized and devtool: 'cheap-module-source-map does not work
我正在尝试按照这篇文章 http://moduscreate.com/optimizing-react-es6-webpack-production-build/ 来减小用于生产的 React 项目的大小。不幸的是,某些步骤不起作用。其中之一就是webpack.DefinePlugin,在webpack中输出webpack.DefinePlugin cannot be defined的错误。也许,这是因为我在开发中构建项目,现在我想将其移至生产环境。也许,我最初必须在生产中创建项目?或者有人知道减少项目大小的更好方法吗?
webpack.config.js
var path = require("path");
var webpack = require('webpack');
var DIST_DIR = path.resolve(__dirname, "dist");
var SRC_DIR = path.resolve(__dirname, "src");
var config = {
devtool: 'cheap-module-source-map',
entry: SRC_DIR + "/app/index.js",
output: {
path: DIST_DIR + "/app",
filename: "bundle.js",
publicPath: "/app/"
},
plugins: [
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('production')
}
})
],
module: {
loaders: [
{
test: /\.js?/,
include: SRC_DIR,
loader: "babel-loader",
query: {
presets: ["react", "es2015", "stage-2"]
}
}
]
}
};
module.exports = config;
此外,devtool: 'cheap-module-source-map' 不工作,它根本没有减少项目的大小。
尝试
...
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify('production')
})
...
相反。
此外,devtool: 'cheap-module-source-map'
不是为了减小包的大小,而是为了生成 source maps。
我正在尝试按照这篇文章 http://moduscreate.com/optimizing-react-es6-webpack-production-build/ 来减小用于生产的 React 项目的大小。不幸的是,某些步骤不起作用。其中之一就是webpack.DefinePlugin,在webpack中输出webpack.DefinePlugin cannot be defined的错误。也许,这是因为我在开发中构建项目,现在我想将其移至生产环境。也许,我最初必须在生产中创建项目?或者有人知道减少项目大小的更好方法吗?
webpack.config.js
var path = require("path");
var webpack = require('webpack');
var DIST_DIR = path.resolve(__dirname, "dist");
var SRC_DIR = path.resolve(__dirname, "src");
var config = {
devtool: 'cheap-module-source-map',
entry: SRC_DIR + "/app/index.js",
output: {
path: DIST_DIR + "/app",
filename: "bundle.js",
publicPath: "/app/"
},
plugins: [
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('production')
}
})
],
module: {
loaders: [
{
test: /\.js?/,
include: SRC_DIR,
loader: "babel-loader",
query: {
presets: ["react", "es2015", "stage-2"]
}
}
]
}
};
module.exports = config;
此外,devtool: 'cheap-module-source-map' 不工作,它根本没有减少项目的大小。
尝试
...
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify('production')
})
...
相反。
此外,devtool: 'cheap-module-source-map'
不是为了减小包的大小,而是为了生成 source maps。