2017-12-27 25 views
0

すべてのbabelモジュール/プラグインが最新バージョンのbabel v6にあります。 モカはv4.0.1です。mochaで実行しているときに、babel-plugin-syntax-dynamic-importを使用して動的インポートの構文エラーが表示される

セットアップ:私は私のテストスイートを実行すると

// .babelrc 
{ 
    presets: [ 
     "stage-3", 
     [ 
     "env", 
     { 
      "targets": { 
       "browsers": [ 
       "last 2 versions" 
       ], 
       "node": "current" 
      } 
     } 
     ] 
     "react" 
    ], 
    plugins: ["transform-runtime", "syntax-dynamic-import"] 
} 


// mocha.opts 
--recursive 
--reporter progress 
--require babel-polyfill 
--require babel-register 
--timeout 20000 

だから私はまだ取得: error stack trace

これは、babel-registerとsyntax-dynamic-importが正しく連携して動作しないことがあると思います。なぜなら、webpackのbabel-loaderと一緒に使うと、私はtranspileに文法エラーを起こさないからです。

+0

です。ダイナミックインポートノードに移動しました。以前私はこれを試していましたが、まだ失敗していました。まだ失敗している理由は、何かがどこかにキャッシュされていたからです。モカやベルベルからのものかもしれません。だから、ファイルやテストを変更した場合、 'dynamic-import-node'が期待どおりに動作するようになりました。 –

+0

なぜ 'syntax-dynamic-import'が' babel-register'でも動作しないのか分かりません。 –

答えて

1

サタジットSahooからbabeljsのたるみにこの答えは私のために物事をクリア:

syntax-dynamic-importは、それがバビロンは構文エラーなしでコードを解析することができることを意味、バビロンの構文が有効になります。コードimport(...)は依然として存在しますが、どのノードが理解できず、まだそれをトランジライズする必要があります。 dynamic-import-nodeimport(...)からrequireへと移行します。クライアントでは、Webpackは構文を理解しバンドルを行うので、蒸散のステップは必要ありません。

関連する問題