React inline elements transform

Replaces the React.createElement function with babelHelpers.jsx.

示例

输入

<Baz foo="bar" key="1"></Baz>;

输出

babelHelpers.jsx(Baz, {
  foo: "bar"
}, "1");

/**
 * 替代
 *
 * React.createElement(Baz, {
 *   foo: "bar",
 *   key: "1",
 * });
 */

Deopt

// 当使用 `ref` 或 `object rest spread` 时,插件仍然会使用 React.createElement。
<Foo ref="bar" />
<Foo {...bar} />

安装

npm install --save-dev babel-plugin-transform-react-inline-elements

用法

通过 .babelrc(推荐)

.babelrc

{
  "plugins": ["transform-react-inline-elements"]
}

通过 CLI

babel --plugins transform-react-inline-elements script.js

通过 Node API

require("babel-core").transform("code", {
  plugins: ["transform-react-inline-elements"]
});

参考