【发布时间】:2017-12-08 17:48:26
【问题描述】:
我有以下webpack-production.config.js 文件:
/* jshint node: true */
var webpack = require('webpack');
process.env.NODE_ENV = JSON.stringify('production');
module.exports = {
watch: false,
entry: {
index: './client/js/index.js',
article: './client/js/article.js',
error: './client/js/error.js'
},
output: {
filename: '[name].bundle.js'
},
module: {
loaders: [
// JSON
{ test: /\.json$/, loader: "json-loader" },
// React & ES2015
{
test: /.jsx?$/,
loader: 'babel-loader',
query: {
presets: ['react', 'es2015']
},
}
]
},
plugins: [
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: JSON.stringify('production')
}
}),
new webpack.optimize.UglifyJsPlugin({
compress: { warnings: false }
})
]
};
当我使用命令webpack --config webpack-production.config.js 运行此任务时,会生成捆绑文件,但是当我在 brawser 中打开我的站点时,React devtool 扩展会显示:This page is using the development build of React.。
我的配置文件有什么问题?如何生成React 生产版本?
我提到React的官网说我必须使用上面两个插件,应该足够了。
更新
我在output 设置中添加了path 选项,现在出现以下错误
在 braoser 控制台中:
Uncaught TypeError: Cannot read property '_' of undefined
我提到我像这样使用underscore:
import _ from 'underscore'
【问题讨论】:
-
转json有什么特殊用途吗?
标签: reactjs webpack production