React offers you two way to create traditional components: using the ES5 create-react-class
module or the new ES6 class system. This rule allow you to enforce one way or another.
...
"react/prefer-es6-class": [<enabled>, <mode>]
...
Will enforce ES6 classes for React Components. This is the default mode.
The following patterns are considered warnings:
var Hello = createReactClass({
render: function() {
return <div>Hello {this.props.name}</div>;
}
});
The following patterns are not considered warnings:
class Hello extends React.Component {
render() {
return <div>Hello {this.props.name}</div>;
}
}
Will enforce ES5 classes for React Components
The following patterns are considered warnings:
class Hello extends React.Component {
render() {
return <div>Hello {this.props.name}</div>;
}
}
The following patterns are not considered warnings:
var Hello = createReactClass({
render: function() {
return <div>Hello {this.props.name}</div>;
}
});