Gran Finale

Vamos fazer nosso projetinho básico para testar nossa configuração. Vamos instalar as dependências que precisamos para rodar qualquer coisa com o React. Para isso execute o comando:

$ yarn add react react-dom

Na pasta app podemos adicionar outra pasta com o nome components e criar o arquivo App.jsx

Linux/MAC:

 $ cd app
 $ mkdir components
 $ cd components
 $ touch App.jsx
 $ cd ../...

Windows:

 > cd app
 > mkdir components
 > cd components
 > type NUL > App.jsx
 > cd ../..

Nosso estrutura de arquivos ficará assim:

.
|-- app
     |-- components
         |-- App.jsx
     |-- index.html
     |-- index.js
|-- .babelrc
|-- package.json
|-- webpack.config.js
|-- yarn.lock

A convenção usada para a criação de componentes é PascalCase, ou seja, o nome do arquivo começa com letra maiúscula.A extensão pdoeria ser tanto .jsx como .js. Acho interessante usar .jsx já que nossos arquivos serão escritos com JSX.

Vamos atualizar nosso arquivo App.jsx:

/*
    ./app/components/App.jsx
*/
import React from 'react';

export default class App extends React.Component {
  render() {
    return (
        <div style={{textAlign: 'center'}}>
            <h1>Eu sou um mestre Jedi!!</h1>
        </div>
     );
  }
}

Finalmente, vamos renderizar nosso componente no nosso arquivo de inicialização index.js. Substitua o console.log por:

/*
    ./app/index.js
*/
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/App.jsx';

ReactDOM.render(<App />, document.getElementById('app'));

Abra o terminal e inicie o projeto. Lembrando que deve executar o seguinte comando na raiz do projeto:

$ yarn start

Abra o browser e digite http://localhost:8080/. Irá perceber que a mensagem Eu sou um mestre Jedi!! irá aparecer na tela.

Conclusão

Agora temos um ambiente de desenvolvimento React configurado. Espero que essa seção tenha esclarecido o que as configurações realmente fazem e o porque que temos de usá-las. Essa configuração é um pouco cansativa de fazer projeto após projeto, por isso que vou compartilhar um repositório que pode servir como código base e contém as configurações que vimos. Sinta-se a vontade experimentar as diferentes configurações que podem ser feitas com webpack.

results matching ""

    No results matching ""