Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ReactJS Starter

ReactJS Starter

Palestra realizada durante o november tech, no Senac, Tubarão - SC em 11/2022.

Avatar for Gefy Marcos

Gefy Marcos

November 22, 2022
Tweet

More Decks by Gefy Marcos

Other Decks in Programming

Transcript

  1. Permite criar componentes encapsulados que gerenciam seu próprio estado; Permite

    deixar a lógica da aplicação fora do DOM. BASEADO EM COMPONENTES
  2. Funciona na Web, no backend com Node e para aplicativos

    com React-Native. USE EM QUALQUER LUGAR
  3. ISSO É REACT class HelloWorld extends React.Component { render() {

    return <div>Hello World </ div>; } } root.render(<HelloWorld /> );
  4. No React a lógica de renderização é acoplada as outras

    lógicas de UI; Manipulação de eventos; Mudança de estado; Preparação de dados pra exibição. POR QUE JSX?
  5. O DOM é a representação de dados de uma página

    web; O React criou o React DOM pra fazer a manipulação desse DOM de forma performática. RENDERIZAÇÃO DE ELEMENTOS
  6. O React DOM compara o elemento novo e seus f

    ilhos e aplica a alteração só no nó que mudou. FONTE: HTTPS://CODEPEN.IO/GAEARON/PEN/GWOJEZ?EDITORS=1010 REACT DOM
  7. INSERINDO ELEMENTO NO DOM <div id="root"></div> const element = <h1>Hello,

    world!</h1>; ReactDOM.render( element, document.getElementById('root') ); .html .js
  8. class HelloWorld extends React.Component { render() { return /*#__PURE__*/React.createElement("div", null,

    "Hello World"); } } root.render( /*#__PURE__*/React.createElement(HelloWorld, null));
  9. COMPONENTE DECLARATIVO function Welcome() { return <h1>Hello World</h1>; } class

    Welcome extends React.Component { render() { return <h1>Hello World</h1>; } }
  10. Props são imutáveis; States são mutáveis e quando seu valor

    é alterado os métodos do ciclo de vida são executados. PROPS VS STATE
  11. STATE E PROPS class Welcome extends React.Component { constructor(props) {

    super(props); } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> </ div> ); } }
  12. STATE E PROPS class Welcome extends React.Component { constructor(props) {

    super(props); } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac </ div> ); } }
  13. STATE E PROPS class Welcome extends React.Component { constructor(props) {

    super(props); } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button> {this.state.text} // undefined </ button> </ div> ); } }
  14. STATE E PROPS class Welcome extends React.Component { constructor(props) {

    super(props); this.state = { text: "não clicou" }; } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button> {this.state.text} // não clicou </ button> </ div> ); } }
  15. STATE E PROPS class Welcome extends React.Component { constructor(props) {

    super(props); this.state = { text: "não clicou" }; } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button onClick={() => this.setState({ text: "clicou"})} > {this.state.text} // não clicou </ button> </ div> ); } }
  16. STATE E PROPS class Welcome extends React.Component { constructor(props) {

    super(props); this.state = { text: "clicou" }; } render() { return ( <div> <h1>Hello, {this.props.title} < / h1> // Hello, Senac <button onClick={() => this.setState({ text: "clicou"})} > {this.state.text} // clicou </ button> </ div> ); } }