JSPM

  • Created
  • Published
  • Downloads 1013479
  • Score
    100M100P100Q187178F
  • License MIT

Babel preset for all React plugins.

Package Exports

  • babel-preset-react

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 (babel-preset-react) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

babel-preset-react

Babel preset for all React plugins.

This preset always includes the following plugins:

And with the development option:

Note: This preset sets the requireDirective option on transform-flow-strip-types. This means Flow annotations and declarations will only be removed in files that have a // @flow directive. It will also throw errors for any Flow annotations found in files without the directive.

// @flow
function foo(numVal: number, strVal: string) {}

Install

You can also check out the React Getting Started page

For more info, check out the setup page on the cli and the usage docs.

Install the CLI and this preset

npm install --save-dev babel-cli babel-preset-react

Make a .babelrc config file with the preset

echo '{ "presets": ["react"] }' > .babelrc

Create a file to run on

echo '<h1>Hello, world!</h1>' > index.js

View the output

./node_modules/.bin/babel index.js

Usage

.babelrc

{
  "presets": ["react"]
}

Via CLI

babel script.js --presets react

Via Node API

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

Options

development

boolean, defaults to false.

Toggles plugins that aid in development, such as babel-plugin-transform-react-jsx-self and babel-plugin-transform-react-jsx-source.

This is useful when combined with either a babelrc.js or env option in a .babelrc configuration:

babelrc.js

module.exports = {
  presets: [
    ["react", {
      development: process.env.BABEL_ENV === "development"
    }],
  ],
}

.babelrc

Note: the env option will likely get deprecated soon

{
  "presets": ["react"],
  "env": {
    "development": {
      "presets": [
        ["react", { "development": true }]
      ]
    }
  }
}