Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否使用browserify/envify删除process.env.NODE_env?_Javascript_Node.js_Reactjs_Browserify - Fatal编程技术网

Javascript 是否使用browserify/envify删除process.env.NODE_env?

Javascript 是否使用browserify/envify删除process.env.NODE_env?,javascript,node.js,reactjs,browserify,Javascript,Node.js,Reactjs,Browserify,因此,我通过NPM和Browserify使用ReactJS,但我试图找出如何在生产模式下构建它,如自述文件所述,但它似乎不起作用。我有以下代码来设置browserify: var browserify = require('browserify'); var envify = require('envify/custom'); var debug = false; 但是,当我查看编译后的代码时,我看到了一堆这样的代码: if ("production" !== process.env.NOD

因此,我通过NPM和Browserify使用ReactJS,但我试图找出如何在生产模式下构建它,如自述文件所述,但它似乎不起作用。我有以下代码来设置browserify:

var browserify = require('browserify');
var envify = require('envify/custom');
var debug = false;

但是,当我查看编译后的代码时,我看到了一堆这样的代码:

if ("production" !== process.env.NODE_ENV) {
我认为它应该编译为:

if ("production" !== "production") {

然后可以通过UglifyJS2等工具自动删除。我设置嫉妒是错误的吗?或者别的什么。

React已经自动配置了
envify
。它将拾取构建脚本本身正在运行的环境。在运行实际构建脚本之前,通常会设置
NODE\u ENV
,例如

NODE_ENV=production gulp build
或者更好的是,您可以将构建步骤添加到
package.json
中的
“scripts”
块中,这样您就可以

npm run --production build
干脆换成

var libraries = browserify({
  debug: debug
}).transform(envify({
  _: 'purge',
  NODE_ENV: debug ? 'development' : 'production'
}), {
  global: true
});

您似乎没有为您的代码提供browserify入口点-它应该是您传递的选项对象中的
browserify()
entries
属性的第一个参数。我只添加了我认为相关的代码,但我已经用完整的browserify代码更新了我的libraries.js文件。注意,捆绑包没有入口点,因为它只包含核心库,文件不会经常更改,所以我使用
require()
手动添加它们。如果您有单独的生产和开发任务,还可以在gulp脚本中设置
process.env.NODE\u env='production'
。这主要是你个人的喜好。
var libraries = browserify({
  debug: debug
}).transform(envify({
  _: 'purge',
  NODE_ENV: debug ? 'development' : 'production'
}), {
  global: true
});