--- title: React.js category: React layout: 2017/sheet --- {%raw%} Example ------- {: .-left-reference} ### Basic example ```jsx class Hello extends React.Component { render () { return
Hello {this.props.name}
} } ``` ```jsx const el = document.body ReactDOM.render(, el) ``` Use the [React.js jsfiddle](http://jsfiddle.net/reactjs/69z2wepo/) to start hacking. (or the unofficial [jsbin](http://jsbin.com/yafixat/edit?js,output)). ### Try it [Open in jsbin](http://jsbin.com/yafixat/edit?js,output) {: target="_blank"} Components ---------- {: .-three-column} ### Class components ```jsx class MyComponent extends React.Component { render () { return
Hello {this.props.name}
} } ``` ```jsx const el = document.body ReactDOM.render(, el) ``` ### Functional components ```jsx function MyComponent ({ name }) { return
Hello {name}
} ``` Functional components have no state. Also, their `props` are passed as the first parameter to a function. ### Nesting ```jsx class Info extends React.Component { render () { const { avatar, username } = this.props return
} } ``` Nest components to separate concerns. See: [multiple components](http://facebook.github.io/react/docs/multiple-components.html) ### Properties ```html