@constgen/neutrino-react-loader
Neutrino middleware for React files
This middleware already includes @constgen/neutrino-babel-loader
Features
This middleware enables many features by default with zero configuration
- Typescript support
- Decorators
- Class properties
- Babel transpilation according to browserlist
- EcmaScript polyfills
- Automatic React runtime inject to every JSX file
- Resolve URLs in JSX like in HTML for these elements:
img[src]
, link[href]
, Image[src]
, video[src]
, video[poster]
, Video[src]
, source[src]
, audio[src]
, Audio[src]
- Remove prop types in production
Requirements
- Node.js v10+
- Neutrino v9
- Webpack v4
Installation
@constgen/neutrino-react-loader
can be installed from NPM. You should install it to "dependencies"
(--save) or "devDependncies"
(--save-dev) depending on your goal.
npm install --save @constgen/neutrino-react-loader
Usage
In preset
Require this package and plug it into Neutrino. The following shows how you can pass an options object to the middleware, showing the defaults:
let reactLoader = require('@constgen/neutrino-react-loader')
neutrino.use(reactLoader({
babel : {},
polyfills: false,
browsers : ['defaults'],
node : undefined,
include : [],
exclude : []
}))
You may enable usage of .browserslistrc
file in your project by setting browsers
option to any falsy value
neutrino.use(reactLoader({
browsers: undefined
}))
In neutrinorc
The middleware also may be used together with another presets in Neutrino rc-file, e.g.:
.neutrinorc.js
let reactLoader = require('@constgen/neutrino-react-loader')
module.exports = {
use: [
reactLoader()
]
}