2016-05-24 13 views
0

babelをプログラマチックに使用するのに苦労しています。プリセットをプログラマブルにバベルに渡す

"use strict"; 

const babel = require("babel-core") 
    , es2015 = require("babel-preset-es2015") 
    ; 

babel.transformFile("my-file.js", { 
    presets: [es2015] 
}, (err, result) => 
    console.log(err || result) 
); 

これは、このエラーで終了します。

Couldn't find preset "es2015" relative to directory "/Users/myusername"

けれども、私は地元の依存関係としてbabel-preset-es2015をインストールしました。これを修正するには?

babel-preset-es2015babel-coreをプロジェクトのローカル依存関係として保持したくありません。

このエラーはなぜ発生しますか?

答えて

0

まあ、babel-coreで深くデバッグを開始し、opts.babelrc !== falseのチェックが見つかりました。

私はおそらく私のホームディレクトリに.babelrcを持っていますが、私はプログラム的babelを使用するために、私はちょうどそれを無視したいので、私はオプションでbabelrc: falseを使用します。

"use strict"; 

const babel = require("babel-core") 
    , es2015 = require("babel-preset-es2015") 
    ; 

babel.transformFile("my-file.js", { 
    presets: [es2015] 
, babelrc: false 
}, (err, result) => 
    console.log(err || result) 
); 
+0

'.babelrc'ファイルが属していますプロジェクトフォルダでは、汎用の親フォルダに '.babelrc'を置くべきではありません。これは、この場合と同様に、問題を求めています。 – loganfsmyth

+0

@loganfsmythはい、本当です。私はプロジェクト固有のバベル構成を本当に望んでいないので、私は[babel-it'](https://github.com/IonicaBizau/babel-it)を作成しました。これはカレントディレクトリのコードを'npm publish'。 –

関連する問題