jsx-transform v2.4.1
jsx-transform

JSX transpiler. Desugar JSX into JavaScript.
This module aims to be a standard and configurable implementation of JSX decoupled from React for use with Mercury or other modules.
JSX is a JavaScript syntax for composing virtual DOM elements. See React's documentation for an explanation.
For linting files containing JSX see JSXHint.
Installation
npm install jsx-transform
API
jsx-transform
This module aims to be a standard and configurable implementation of JSX decoupled from React for use with Mercury or other modules.
JSX is a JavaScript syntax for composing virtual DOM elements. See React's documentation for an explanation.
For linting files containing JSX see JSXHint.
- jsx-transform
- ~fromString(str, [options]) ⇒ String
- ~fromFile(path, [options]) ⇒ String
- ~browserifyTransform([filename], [options]) ⇒ function
jsx-transform~fromString(str, options) ⇒ String
Desugar JSX and return transformed string.
Kind: inner method of jsx-transform
Param | Type | Description |
---|---|---|
str | String | |
options | Object | |
options.factory | String | Factory function name for element creation. |
options.spreadFn | String | Name of function for use with spread attributes (default: Object.assign). |
options.unknownTagPattern | String | uses given pattern for unknown tags where {tag} is replaced by the tag name. Useful for rending mercury components as Component.render() instead of Component() . |
options.passUnknownTagsToFactory | Boolean | Handle unknown tags like known tags, and pass them as an object to options.factory . If true, createElement(Component) instead of Component() (default: false). |
options.unknownTagsAsString | Boolean | Pass unknown tags as string to options.factory (default: false). |
options.arrayChildren | Boolean | Pass children as array instead of arguments (default: true). |
Example
var jsx = require('jsx-transform');
jsx.fromString('<h1>Hello World</h1>', {
factory: 'mercury.h'
});
// => 'mercury.h("h1", null, ["Hello World"])'
jsx-transform~fromFile(path, options) ⇒ String
Kind: inner method of jsx-transform
Param | Type |
---|---|
path | String |
options | Object |
jsx-transform~browserifyTransform(filename, options) ⇒ function
Make a browserify transform.
Kind: inner method of jsx-transform
Returns: function - browserify transform
Param | Type | Description |
---|---|---|
filename | String | |
options | Object | |
options.extensions | String | Array of file extensions to run browserify transform on (default: ['.js', '.jsx', '.es', '.es6'] ). |
Example
var browserify = require('browserify');
var jsxify = require('jsx-transform').browserifyTransform;
browserify()
.transform(jsxify, options)
.bundle()
Use .configure(options)
to return a configured transform:
var browserify = require('browserify');
var jsxify = require('jsx-transform').browserifyTransform;
browserify({
transforms: [jsxify.configure(options)]
}).bundle()
Use in package.json
:
"browserify": {
"transform": [
["jsx-transform/browserify", { "factory": "h" }]
]
}
BSD Licensed
5 years ago
7 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago