LoginSignup
3
0

More than 5 years have passed since last update.

非 Babel 環境で使うツールに Babel プラグインを解決させる方法

Last updated at Posted at 2017-05-25

問題

バージョン: Babel 6.X

グローバルインストールして CLI として使う npm パッケージを作っていて、内部で Babel (Node API) を使っていたのだが、プラグイン名の解決に失敗した。

var result = babel.transform(code, {
    plugins: ["transform-react-jsx"],
});
ReferenceError: Unknown plugin "transform-react-jsx" specified in "base" at 0

状況をもう少し詳しく説明すると、ツールの package.json の dependencies には babel-plugin-transform-react-jsx が含まれている。開発時には動作するのだが、 Babel と関係ない環境からツールを使おうとすると、カレントディレクトリから node_modules を探しに行ってしまいプラグインが見つからない。

解決方法

pluginsファイルパスを指定できるようだ。

var result = babel.transform(code, {
    plugins: [Path.join(__dirname, '../node_modules/babel-plugin-transform-react-jsx/lib/index.js')]
});
3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0