React é uma biblioteca que auxilia na construção de interfaces.
E por que todo esse boom em volta do react?
Muito rápido
Virtual DOM
A manipulação do DOM (operação custosa) fica nas mãos do desenvolvedor
Toda modificação dispara uma alteração no DOM
Otimiza a manipulação do DOM, alterando somente o necessário
Alterações são enviadas em lote, minimizando impacto no DOM
A sintaxe mais utilizada para a criação de componentes em React é JSX
JSX é uma extensão da sintaxe do JavaScript que lembra XML
Bem vindo ao react!
const element = React.createElement(
"div",
null,
React.createElement(
"p",
null,
"Bem vindo ao react!"
)
);
Bem vindo ao react!
const element = (
Bem vindo ao react!
);
function Componente({nome}) {
return (
Bem vindo {nome}!
);
}
class Componente extends React.Component {
constructor() {
//...
}
render() {
return (
Bem vindo {this.store.nome}!
);
}
}
}
Arquitetura
Facilita a implementação de flux
import React from 'react';
import { observer } from 'mobx-react';
import ExemploStore from '../stores/ExemploStore';
@observer
class Exemplo extends React.Component {
constructor(props) {
super(props);
this.store = ExemploStore;
}
render() {
return ({this.store.exemplo});
}
}
import { observable, action } from 'mobx';
class ExemploStore {
@observable exemplo = 'Teste';
@action
fazAlgumaCoisa() {
this.exemplo = 'React!';
}
}
export default new ExemploStore();