簡単な質問がありますが、どこにも行き着きません。彼は午前中ずっとグーグルで検索していました。traceur についての情報はあまりなく、少なくとも私にはそれほど明確ではありません。
traceur を使用して単一の出力ファイルをトランスパイルし、それを traceur-runtime を使用してブラウザーで使用する場合、ES6 モジュールをどのように実装する必要がありますか? インポートとエクスポートが予期しないトークンを取得し続けます。
私は gulp-traceur を使用しており、既にすべてのモジュール オプション //'commonjs' //'amd'、'commonjs'、'instantiate'、'inline'、'register' を試しました。
私が持っている1つの疑問は、私がcommonjsについての答えを見つけ続けているということですが、ES6モジュールを使用するという私の考えは、さまざまなソースを持ち、メインからそれらをインポートし、このすべての結果を1つのファイルにコンパイルすることです(私が意味するのは、ブラウザでのモジュールの非同期ロードが必要です)
これが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';
また
import * as Circle from './elements/circle.js';
(色々な方法を試しました)
また、エクスポート時に circle.js から
export default Circle;
またはexport Circle;
(いくつかの方法も試しました)