@babel/plugin-transform-react-jsx-development
情報
このプラグインは@babel/preset-react
に含まれています。
このプラグインは@babel/plugin-transform-react-jsx
の開発者バージョンです。React アプリのデバッグのために、強化された検証エラーメッセージと正確なコード位置情報を提供するように設計されています。このプラグインは、本番ビルドよりも大幅に多くの出力を生成するため、開発環境での使用を目的としていることに注意してください。
@babel/preset-react
を使用している場合、development
オプションによって自動的に有効になるため、インストールする必要はありません。
例
入力
input.jsx
const profile = (
<div>
<img src="avatar.png" className="profile" />
<h3>{[user.firstName, user.lastName].join(" ")}</h3>
</div>
);
出力
output.js
import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
const _jsxFileName = "input.jsx";
const profile = _jsxDEV("div", {
children: [
_jsxDEV("img", {
src: "avatar.png",
className: "profile",
}, undefined, false, { fileName: _jsxFileName, lineNumber: 3, columnNumber: 5 }, this),
_jsxDEV("h3", {
children: [user.firstName, user.lastName].join(" "),
}, undefined, false, { fileName: _jsxFileName, lineNumber: 4, columnNumber: 5 }, this),
]},
undefined, false, { fileName: _jsxFileName, lineNumber: 2, columnNumber: 3 }, this
);
インストール
- npm
- Yarn
- pnpm
npm install --save-dev @babel/plugin-transform-react-jsx-development
yarn add --dev @babel/plugin-transform-react-jsx-development
pnpm add --save-dev @babel/plugin-transform-react-jsx-development
使用方法
設定ファイルを使用する場合 (推奨)
オプションなし
babel.config.json
{
"plugins": ["@babel/plugin-transform-react-jsx-development"]
}
オプションあり
babel.config.json
{
"plugins": [
[
"@babel/plugin-transform-react-jsx-development",
{
"throwIfNamespace": false, // defaults to true
"runtime": "automatic", // defaults to classic
"importSource": "custom-jsx-library" // defaults to react
}
]
]
}
CLI経由
シェル
babel --plugins @babel/plugin-transform-react-jsx-development script.js
Node API経由
JavaScript
require("@babel/core").transformSync("code", {
plugins: ["@babel/plugin-transform-react-jsx-development"],
});
オプション
@babel/plugin-transform-react-jsx
と同じオプションを受け入れます。