Component Styles
Components
- ES5 createClass Component
- ES6 Class Components
- ES5 Stateless Component
- ES6 Stateless Component
ES5 createClass Component
var HelloWorld = React.createClass({
render: function () {
return <h1>Hello World!M/h1>;
}
});
ES6 Class Components
import React, { Component } from "react";
export default class Login extends Component {
render() {
return (
<div>
Login Form will go here
</div>
)
}
}
- No autobind, requires explicit bind with ES6 class
// Works fine with ES5 createClass
<div onClick={ this.handleClick() }></div>
// Requires Explicit binding with ES6 Class
<div onClick={ this.handleClick().bind(this) }></div>
- PropTypes are declared separately
- Default props are declared separately
- Set initial state in constructor
ES5 Stateless Component
var HelloWorld = function(props) {
return <h1>Hello World!</h1>;
};
ES6 Stateless Component
const HelloWorld = (props) => {
return <h1>Hello World!</h1>
}
OR
function HelloWorld(props) {
return <h1>Hello World!</h1>
}