我正在尝试使用 es6ify 浏览 javascript es6 代码。我的代码使用了三个 js 库(一个 webgl 抽象库),在我尝试将 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
是未定义的。
THREE js 在 node package.json 的依赖中,一般情况下 THREE JS 都导入好了。但是当我add(es6ify.runtime)
在我的构建过程中添加时,它会导致require('three')
一个空对象......
有什么我想念的吗?
谢谢!