var div_page = document.getElementsByClassName('page')[0];

const gustavo = {
  nome: 'Gustavo',
  sobrenome: 'Moraes'
};

function exibeNomePessoa(pessoa) {
  return pessoa.nome + ' ' + pessoa.sobrenome;
}

/**
 * Componente *funcional* React.
 * Renderiza uma mensagem de boas vindas para o nome passado como parâmetro.
 */
var BemVindo = React.createClass({

	render() {
		if (this.props.pessoa) {
			return (
				<div className="container">
					<h1>Olá, {exibeNomePessoa(this.props.pessoa)}!</h1>
				</div>
			);
		}
		return (
			<div className="container">
				<h1>Olá, estranho.</h1>
			</div>
		);
	}
});

const elemento = <BemVindo pessoa={gustavo} />;

ReactDOM.render(elemento, div_page);
var div_page = document.getElementsByClassName('page')[0];

const gustavo = {
  nome: 'Gustavo',
  sobrenome: 'Moraes'
};

function exibeNomePessoa(pessoa) {
  return pessoa.nome + ' ' + pessoa.sobrenome;
}

/**
 * Componente *funcional* React.
 * Renderiza uma mensagem de boas vindas para o nome passado como parâmetro.
 */
class BemVindo extends React.Component {

	render() {
		if (this.props.pessoa) {
			return (
				<div className="container">
					<h1>Olá, {exibeNomePessoa(this.props.pessoa)}!</h1>
				</div>
			);
		}
		return (
			<div className="container">
				<h1>Olá, estranho.</h1>
			</div>
		);
	}
}

const elemento = <BemVindo pessoa={gustavo} />;

ReactDOM.render(elemento, div_page);
Revert "Transforma uma classe-componente React em uma variável-componente React"
Revert "Transforma uma classe-componente React em uma variável-componente React"

This reverts commit 3065f5752af4bbaefeb08271ef2f11a34ffe453c.

Revertido porque a forma anterior é a mais moderna e usual de se criar componentes React.
