GithubHelp home page GithubHelp logo

imutabilidade-e-usestate-exercicios's Introduction

Imutabilidade e useState() - Exercício

Caso não lembre como funciona o processo de entrega, clique aqui

Como eu vou executar os exercícios?

Para o exercício de hoje, vamos utilizar um template! Dentro desse template vocês vão encontrar uma estrutura para trabalharmos com Pokemons! :)

Para executar este exercício, você pode criar uma nova aplicação React, utilizar o CodeSandbox ou usar este template do repositório.

Caso queira criar uma nova aplicação React, basta copiar os conteúdos deste repositório e colar dentro da pasta do seu projeto criado.

Observação: A aplicação não vai funcionar até você finalizar o exercício 2!

Exercício 1

Primeiro, vamos analisar todo o código que vocês estão recebendo.

  • Observe o App.js, o que você consegue visualizar que já conhece?

  • Entende o <GlobalStyles/>?

  • Analize os valores que são esperados por props no componente PokemonCard criado, que tipo de dado está sendo esperado neste componente?

  • Agora analize o JSX, quais componentes existem nesta aplicação?

  • O que existe dentro do componente PokemonCard?

  • O que a função evoluirPokemon está fazendo no momento?

  • Quais informações estão sendo recebidas pelo componente PokemonCard via props?

Exercício 2

Agora é hora de criar seus próprios cards, para recolher as informações dos pokemons, você pode usar o site https://bulbapedia.bulbagarden.net/wiki/Main_Page como referência!

Seu trabalho nesse momento é criar o estado do pokémon e passar as Props corretamente do componente App.js para dentro do componente PokemonCard. Verifique se todas elas estão funcionando.

Você vai perceber que é necessário passar uma cor para os styled-components. Você não precisa entender 100% como isso funciona agora, mas se você passar as props corretamente, vai dar certo! :)

Exercício 3

Implemente a função de evoluir o Pokemon. Nessa função de onClick, você precisa modificar o estado criado no App.js para que, ao clicar, o Pokemon evolua pra sua próxima forma, se isso for possível. Perceba que alguns pokemons evoluem e outros não. Para isso, você precisa modificar os dados de dentro do objeto salvo no useState:

  • Cor
  • Imagem
  • Nome
  • Tipo
  • Evoluido (perceba que isso é um boolean, se ele já estiver evoluído, deve ser true; caso contrário, false.)
  • Peso

Depois disso, crie novos cards com pokemons diferentes para praticar :)

imutabilidade-e-usestate-exercicios's People

Contributors

azzinogueira-marina avatar clarameirelles avatar indiomedeiros avatar luizfbarbosa12 avatar majubaraldi avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.