npm install --global babel-cli
を使用してBabel CLI(バージョン6)をインストールしました。次に、npm install --global babel-preset-react
を使用して反応プリセットをインストールします。
次に、プロジェクトディレクトリの.babelrc
ファイルをセットアップして、
{
"presets": ["react"]
}
JSXファイルをビルドしようとすると失敗します
Error: Couldn't find preset "react"
at OptionManager.mergePresets (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:310:17)
at OptionManager.mergeOptions (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:270:12)
at OptionManager.addConfig (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:206:10)
at OptionManager.findConfigs (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:347:16)
at OptionManager.init (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:392:12)
at File.initOptions (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:191:75)
at new File (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:122:22)
at Pipeline.transform (/usr/local/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/pipeline.js:42:16)
at transform (/usr/local/lib/node_modules/babel-cli/lib/babel/util.js:53:22)
at Object.compile (/usr/local/lib/node_modules/babel-cli/lib/babel/util.js:62:12)
--globalフラグなしでプリセットをインストールする(つまり、node_modules /フォルダーにローカルにインストールする)場合、ビルドは機能します。 babelがグローバルプリセットで動作するように設定するにはどうすればよいですか?
使用しようとしているプリセットへの絶対(または相対)パスを指定できます。例:
babel --presets /usr/local/lib/node_modules/babel-preset-react --watch jsx/ --out-dir js/
このようにすることができます。これらの行をプロンプトに記述します。今、唯一のことはグローバルであり、あなたは@Petarによって上で提案された修正を使用する必要があるかもしれません
babel --presets /usr/local/lib/node_modules/babel-preset-react --watch jsx/ --out-dir js/
しかし、これはあなたが必要とするすべてを行います。
npm i babel-cli babel-preset-react
babel --presets react jsx/ --watch --out-dir js/
そして、オプションでcontent = node_modules /で.gitignoreファイルをgithubリポジトリに追加し、同じコマンドでjsx変換を実行します。