0

JS ファイルと JSX ファイル (React.js で使用するため) の両方を、バージョン管理された単一の all.js ファイルに結合しようとしています。

私の現在のGulpfile:

var elixir = require('laravel-elixir');
elixir.config.sourcemaps = false;

elixir(function(mix) {
        mix
        .less([
                'app.less'
        ], null, 'resources/assets/less')
        .babel([
                'libs/**', //contains react.js among other libs (jquery, bootstrap)
                'app.js', //contains normal jquery
                'quiz/quiz.jsx'
        ], null, 'resources/assets/js')
        //.babel([
                //'quiz/quiz.jsx'
        //])
        .version(["css/app.css", "js/all.js"]);
});

出力:

[18:38:28] Starting 'default'...
[18:38:28] Starting 'less'...

Fetching Less Source Files...
   - resources/assets/less/app.less


Saving To...
   - public/css/app.css

[18:38:30] Finished 'default' after 1.91 s
[18:38:34] gulp-notify: [Laravel Elixir] Less Compiled!
[18:38:34] Finished 'less' after 6 s
[18:38:34] Starting 'babel'...

Fetching Babel Source Files...
   - resources/assets/js/libs/**/**/*
   - resources/assets/js/app.js
   - resources/assets/js/quiz/quiz.jsx


Saving To...
   - public/js/all.js <---- STUCK HERE

しばらくそこにスタックしていて、これをデバッグする方法がわかりません。
最初の babel() を scripts() で変更すると機能しますが、もちろん JSX ファイルはコンパイルされません (そしてそれについて不平を言うこともありません)。
スクリプト (コメントアウトされた 3 行) の後に babel を呼び出すと、JSX ファイルは正しくコンパイルされますが、それ以外はすべてコンパイルされません (単純に JSX をコンパイルして all.js に保存します)。

どうすればこれを修正できますか?

4

0 に答える 0