* Add JSX Fragments to babel-types * Support JSX fragments in the transform-react-jsx plugin * Add tests JSX fragments * Update helper-builder and transform plugin documentations for jsx fragment * Add generator for jsx fragments * Add test for jsx fragment generator * Split jsx transform example into normal and fragment examples * Remove unnecessary fields from ElementState in babel-helper-builder-react-jsx * inline [skip ci]
29 lines
759 B
Markdown
29 lines
759 B
Markdown
# @babel/helper-builder-react-jsx
|
|
|
|
## Usage
|
|
|
|
```javascript
|
|
type ElementState = {
|
|
tagExpr: Object; // tag node
|
|
tagName: string; // raw string tag name
|
|
args: Array<Object>; // array of call arguments
|
|
call?: Object; // optional call property that can be set to override the call expression returned
|
|
};
|
|
|
|
require("@babel/helper-builder-react-jsx")({
|
|
filter: function (element: JSXElement) {
|
|
// if returns false, the element isn't transformed
|
|
},
|
|
|
|
pre: function (state: ElementState) {
|
|
// function called with (state: ElementState) before building attribs
|
|
},
|
|
|
|
post: function (state: ElementState) {
|
|
// function called with (state: ElementState) after building attribs
|
|
},
|
|
|
|
compat?: boolean // true if React is in compat mode
|
|
});
|
|
```
|