Babel和typeahead的问题

时间:2016-08-11 16:27:20

标签: javascript node.js gulp typeahead.js gulp-babel

在node.js项目中使用babel时,我正在尝试将所有文​​件捆绑到一个已编译和缩小的js文件中。

我正在使用gulp-babel 6.1.2运行babel,我已经安装了ES-2015预设(6.13.2)。

我正在使用我的文件构建一个包,并输入0.11.1,问题是当运行gulp任务并通过babel管道时,类型化的功能不起作用(Uncaught TypeError:无法设置属性'Bloodhound'的未定义)。 如果我再次运行任务,从管道中删除babel命令,一切正常。

我知道我可以构建两个单独的包,一个用于我的文件,另一个用于外部文件,但我想知道它为什么失败。

我的大口任务:

gulp.task('bundleCheckoutDesktopJs', function () {
var js = ['./src/js/project/external/*', './src/js/project/common/*', './src/js/project/*'];

return gulp.src(js)
    .pipe(babel())
    .pipe(concat('project.min.js'))
    .pipe(uglify())
    .pipe(gulp.dest('statics/js/'));
});

我在调查一段时间后得到的结果(typeahead.js):

(function(root, factory) {
   if (typeof define === "function" && define.amd) {
      define("bloodhound", [ "jquery" ], function(a0) {
          return root["Bloodhound"] = factory(a0);
      });
   } else if (typeof exports === "object") {
      module.exports = factory(require("jquery"));
   } else {
     // Root seems to be undefined here....
     root["Bloodhound"] = factory(jQuery);

   }
})

任何帮助将不胜感激,提前谢谢。

0 个答案:

没有答案