ESLint-plugin-React
![Code Climate](https://img.shields.io/codeclimate/github/yannickcr/eslint-plugin-react.svg)
React specific linting rules for ESLint
Installation
Install ESLint either locally or globally.
$ npm install eslint --save-dev
If you installed ESLint
globally, you have to install React plugin globally too. Otherwise, install it locally.
$ npm install eslint-plugin-react --save-dev
Configuration
Add plugins
section and specify ESLint-plugin-React as a plugin.
{
"plugins": [
"react"
]
}
You can also specify some settings that will be shared across all the plugin rules.
{
"settings": {
"react": {
"createClass": "createClass",
"pragma": "React",
"version": "15.0"
}
}
}
If it is not already the case you must also configure ESLint
to support JSX.
With ESLint 1.x.x:
{
"ecmaFeatures": {
"jsx": true
}
}
With ESLint 2.x.x or 3.x.x:
{
"parserOptions": {
"ecmaFeatures": {
"jsx": true
}
}
}
Finally, enable all of the rules that you would like to use. Use our preset to get reasonable defaults quickly, and/or choose your own:
"rules": {
"react/jsx-uses-react": "error",
"react/jsx-uses-vars": "error",
}
List of supported rules
JSX-specific rules
Other useful plugins
Shareable configurations
Recommended
This plugin exports a recommended
configuration that enforce React good practices.
To enable this configuration use the extends
property in your .eslintrc
config file:
{
"extends": ["eslint:recommended", "plugin:react/recommended"]
}
See ESLint documentation for more information about extending configuration files.
The rules enabled in this configuration are:
All
This plugin also exports an all
configuration that includes every available rule.
This pairs well with the eslint:all
rule.
{
"plugins": [
"react"
],
"extends": ["eslint:all", "plugin:react/all"]
}
Note: These configurations will import eslint-plugin-react
and enable JSX in parser options.
License
ESLint-plugin-React is licensed under the MIT License.