【问题标题】:Setting NODE_ENV via envify not working通过 envify 设置 NODE_ENV 不起作用
【发布时间】:2015-11-04 07:12:51
【问题描述】:

我的gulpfile.js 中有以下gulp 任务:

    gulp.task('build-scripts', function () {
    var b = browserify({ debug: false });
    b.transform(reactify);
    b.transform(envify({
        _: 'purge',
        NODE_ENV: 'production'
    }));

    b.add('./src/scripts/index.js');

    return b.bundle()
    .pipe(source('./www/scripts/dist/bundle.js'))
    .pipe(buffer())
    .pipe(uglify())
    .pipe(gulp.dest('.'))

});

任务以状态 0 完成并发生 React 转换,但在 bundle.js 我仍然看到:

if (process.env.NODE_ENV !== 'production') {

这不应该随着envify 转换而消失吗? 我在这里做错了吗?

我已经进行了一些挖掘,但我能找到的所有解决方案都是 os x / linux 特定的(我在 windows 机器上)。

编辑:我正在 Visual Studio 的 Task Runner Explorer 内运行 gulp 构建。

【问题讨论】:

    标签: reactjs gulp browserify


    【解决方案1】:

    文档说:

    默认情况下,未定义的环境变量将保持不变。

    https://github.com/hughsk/envify#purging-processenv

    您是否尝试在运行之前定义它?即

    process.env.NODE_ENV = 'production';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-29
      • 2011-06-01
      • 1970-01-01
      • 2023-03-15
      • 2021-12-18
      • 2018-06-15
      • 1970-01-01
      相关资源
      最近更新 更多