我只是有一个简单的问题无法在任何地方找到,整个早上都在谷歌上搜索。关于 Traceur 的信息不多,而且什么时候有也不是很清楚,至少对我来说是这样。
当我使用traceur转译单个输出文件并在浏览器中使用traceur-runtime使用它时,应该如何实现ES6模块?
导入和导出不断获得意外令牌。
我正在使用 gulp-traceur 并尝试了所有模块选项
//'commonjs' //'amd', 'commonjs', '实例化', '内联', '注册'。
我的一个疑问是,我一直在寻找有关 commonjs 的答案,但我使用 ES6 模块的想法是拥有不同的源,然后从 main 导入它们,并将所有这些结果编译到一个文件中(我的意思是我不需要在浏览器中异步加载模块)
这是 gulp 任务
gulp.task('scripts', function() {
del.sync(['bin/js/main.min.js']);
del.sync(['bin/js/main.min.js.map']);
gulp.src(["./src/app/init.js", "./src/app/elements/circle.js", "./src/app/app.js"])
.pipe(sourcemaps.init())
.pipe(traceur({modules : 'inline', sourceMaps: 'inline', experimental: "true"})) //'commonjs' //'amd', 'commonjs', 'instantiate', 'inline', 'register'
.on('error', errorParser)
.pipe(jshint())
.pipe(jshint.reporter('jshint-stylish'))
.pipe(uglify({mangle: true})).on('error', errorParser)
.pipe(concat('main.min.js'))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('bin/js'))
.pipe(livereload({ auto: true }));
});
导入时意外的令牌来自应用程序
import Circle from './elements/circle';
or
import * as Circle from './elements/circle.js';
(尝试了几种方法)
导出时也是来自circle.js
export default Circle;
or export Circle;
(也尝试了几种方法)