【问题标题】:Browserify breaking function. Error "Uncaught ReferenceError: foo is not defined"Browserify 破解功能。错误“未捕获的 ReferenceError:未定义 foo”
【发布时间】:2018-06-27 15:09:37
【问题描述】:

我有一个看起来像这样的函数:

foo = () => {
  someClass.foo((error, someVariabel) => {
    // code
  });
}

如果我运行它,它会起作用。但是我想扩展这个项目,所以我现在需要运行 Browsify,它会将函数更改为如下所示:

foo = function foo() {
  someClass.foo(function (error, someVariabel) {
    // code
  });
};

这个函数现在在= function foo() { 行上给出一个错误,它在 Chrome 中显示“未捕获的 ReferenceError: foo is not defined”。

有人知道为什么会发生这种情况以及我需要做什么吗?

我的 gulp 文件如下所示:

gulp.task('scripts', function() {
    gulp.src('js/*.js')
        .pipe(babel({
            presets: ['env']
        }))
        .pipe(browserify())
        .pipe(gulp.dest('dist/js'));
});

有什么想法吗?

【问题讨论】:

    标签: javascript google-chrome gulp browserify


    【解决方案1】:

    babel 在 browserify 上的效果真的很差,所以他们推荐 babelify

    gulp.task("bundle", function () {
        return browserify({
            entries: "./src/index.js"
        })
            .transform(babelify.configure({
                presets: ["@babel/preset-env"]
            }))
            .bundle()
            .pipe(source("bundle.min.js"))
            .pipe(buffer())
            .pipe(sourcemaps.init())
            .pipe(uglify())
            .pipe(sourcemaps.write('./maps'))
            .pipe(gulp.dest("./build"));
    
    });
    

    【讨论】:

      猜你喜欢
      • 2016-10-06
      • 2020-02-02
      • 2015-03-01
      • 2014-10-21
      • 2023-03-04
      • 2019-12-28
      • 1970-01-01
      • 2022-10-30
      • 1970-01-01
      相关资源
      最近更新 更多