我正在尝试使用es6ify浏览javascript es6代码。 我的代码使用的是三个js库(一个webgl抽象库),一切都运行良好,直到我尝试在bundle的顶部添加traceur编译器运行时。
这是我的gulp任务(问题不一定与gulp有关):
gulp.task('build', function(){
browserify({debug: true})
.add(es6ify.runtime)
.transform(es6ify)
.require(require.resolve('./app/index.js'), {entry: true})
.bundle()
.pipe(source('bundle.js'))
.pipe(gulp.dest('./build/'));
});
在我的应用程序的某个地方,我正在尝试做类似的事情:
import THREE from 'three';
var toto = new THREE.WebGLRenderer([...]);
且失败,因为THREE
实际上是空对象,因此WebGLRenderer
未定义。
三个js在节点package.json的依赖项中,而THREE JS 通常很好地导入。但是当我在构建过程中添加add(es6ify.runtime)
时,会导致require('three')
成为空对象......
有什么我错过的吗?
谢谢!
答案 0 :(得分:0)
所以代替:
.transform(es6ify)
我现在有:
.transform(es6ify.configure(/^(?!.*node_modules)+.+\.js$/))
(这是an es6ifyAPI documentation样本)
编译速度更快: - )