babel-plugin-transform-react-createelement-to-jsx
v1.1.0
Published
Transforms React.createElement calls to JSX syntax
Downloads
11,006
Readme
babel-plugin-transform-react-createelement-to-jsx
Turn React.createElement
calls back into JSX syntax.
This is useful for
- Converting projects that started out in the opinion that “we need no stinking compilers”
- Converting already-compiled JS into something maintainable (E.g. CJSX syntax → coffee-react-transform → decaffeinate → react-createelement-to-jsx → JSX syntax)
Installation
$ npm install babel-plugin-transform-react-createelement-to-jsx
Usage
Via .babelrc
(Recommended)
.babelrc
{
"plugins": [ "transform-react-createelement-to-jsx" ]
}
Via CLI
$ babel --plugins transform-react-createelement-to-jsx script.js
Via Node API
import babel from 'babel-core'
babel.transform('code', {
plugins: ['transform-react-createelement-to-jsx'],
})
Development
If you want to help with corner cases, here are helpful resources:
- Babylon AST spec needed to understand the AST we traverse
- JSX AST spec extension of the above, needed to understand what we emit
- babel-types API helpful tests and factories for AST nodes