Package Exports
- jsx-transform
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (jsx-transform) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
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-transformAPI
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
- ~fromString(str, [options]) ⇒
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" }]
]
}