babel-node
を使用してCLIでBabelを実行しようとしていますが、Unexpected token export
エラーが発生し続けます。 Babel 6はすべてプラグインに関するものであり、.babelrc
を介してプラグインを設定する必要があることを理解していますが、正しく動作しないようです。
だからここに私の質問があります:
package.json
を介してプラグインを設定する の代わりの方法を試してみましたが、それでも運はありません。.babelrc
オプションがありますか?プラグインを必要とするすべてのプロジェクトにプラグインをインストールする必要がある場合、それは退屈なようです...私がエクスポートしようとしているものに興味がある人のために、クラスがあります:
'use strict';
class Factorial {
static solve (num) {
if(num === 0) return 1;
else return num * Factorial.solve(num - 1);
}
}
console.log(Factorial.solve(5))
export default Factorial;
開始する最も簡単な方法は、プリセットを使用することです。
まず、依存関係をインストールしましょう。
$ npm install --save-dev babel-cli babel-preset-es2015
次に、Babelを実行するpackage.jsonにbuild
スクリプトを追加します(グローバルにインストールされたものではなく、ローカルバージョンのbabel-cli
を使用するため、これは重要です)
"build": "babel input.js"
package.json
は次のようになります。
{
"name": "my-module",
"devDependencies": {
"babel-cli": "^6.x.x",
"babel-preset-es2015": "^6.x.x"
},
"scripts": {
"build": "babel input.js -o compiled.js"
}
}
最後に、次のようにローカル.babelrc
を更新します。
{
"presets": ["es2015"]
}
次にnpm run build
を実行すると、準備完了です。
また、Babel 6のCLIにはグローバルな.babelrcオプションがありますか?プラグインを必要とするすべてのプロジェクトにプラグインをインストールする必要がある場合、それは退屈なようです...
プロジェクトコードを1つずつ更新せずに更新することはできないため、これは悪い考えです。ローカルバージョンがあると、この潜在的なエラーが発生する可能性が低くなります。
同じエラーが表示されましたが、webpack/babelの設定は正しく見えました。試行錯誤により、export myFunction
with export default myFunction
とエラーが解決されました。
後で、エクスポートの正しい方法はexport {myFunction}
。私はそれを実装し、すべてが正常に動作します。