Por isso estou de volta neste aplicativo em que trabalhamos, este aplicativo de metas onde podemos adicionar alguns
objetivos aqui e este é o código que escrevemos lá, eu não mudei nada lá dentro.
Agora deixe-me mostrar as diferentes coisas que poderiam dar errado e como você as corrige.
Então, vamos começar simples,
digamos que temos um erro de sintaxe simples, aqui onde nós abrimos o nosso modal no final, definindo o
modo add
para true, deixe-me remover esse colchete de fechamento. Agora, isso é um claro erro de sintaxe, é um
erro que podemos e devemos evitar totalmente, porque nós, como desenvolvedores, cometemos um erro claro.
Agora, o bom é que até o nosso IDE reconhece isso e nos dá um aviso aqui, infelizmente, o
erro que está mostrando aqui não é
totalmente correto, ele diz que está esperando uma vírgula,
bem, na verdade não é o problema real, o problema real é suporte ausente.
Ainda assim, temos uma ideia de que algo está errado
aqui e enquanto você ainda precisa pensar sobre o problema e você não pode usar essa solução cegamente olhando para
esse código, em algum momento você deve descobrir que há um suporte faltando.
Mesmo se você esquecer isso e você salvar isso, digamos, então o pacote Javascript será construído aqui, como
você vê, eu lancei isso no Android e no iOS e agora estamos recebendo essa tela de erro vermelha
que eu estava falando e novamente
aqui, podemos simplesmente ler a mensagem de erro.
Ele ainda está nos apontando para a solução errada, esperando uma vírgula, mas nos aponta para a linha de
código correta, aqui você vê o título deste botão adicionar nova linha de meta, por isso ainda nos mostra onde
devemos olhar e que a questão é provavelmente decorrente dessa linha.
Nós recebemos o mesmo erro aqui neste console e também em nossas ferramentas expo dev aqui, você vê a mesma mensagem de erro
também com uma dica na linha onde este erro está vindo, então você está recebendo um
monte de ajuda para rastrear esse problema. Agora aqui, infelizmente ainda não está
pegando que eu corrigi este erro e, portanto, aqui, vemos que caiu, no iOS
no Android, não
está recarregando. Agora no Android,
vemos um comando que podemos usar para recarregar
o aplicativo, podemos clicar lá ou pressionar r duas vezes para recarregar, mas ainda não está pegando a alteração aqui mesmo que
eu tenha consertado isso no código,
então uma solução aqui é simplesmente pare o pacote ou reinicie o npm start.
Isso acontece raramente, mas às vezes isso quebra e simplesmente reiniciar esse processo de inicialização do npm
é o que fazer
e, com isso, vou executá-lo novamente no Android pressionando ae no iOS pressionando i e agora isso deve
reiniciar o aplicativo nesses dispositivos .
Mais uma vez, isso vai acontecer raramente, mas às vezes acontece e você pode apenas reiniciá-lo
para que isso funcione corretamente.
Agora com isso funcionando novamente, deixe-me mostrar um exemplo de uma mensagem de erro que você está recebendo onde você não tem
um erro de sintaxe, mas você ainda tem um erro claro no seu código.
Digamos que, quando adicionamos uma meta aqui com o título da meta, adicionamos uma verificação em que vemos se o tamanho do título da meta é maior
que zero para verificar se o valor não está vazio ou se é igual a zero, o que significa que o usuário
não Digite um título e, neste caso,
acabamos de retornar, o que significa que não vamos adicionar esse objetivo aqui e também não vamos fechar o
modal, então estamos
apenas ignorando a entrada do usuário porque está vazia.
Podemos querer mostrar uma
mensagem de erro, mas por enquanto vamos apenas fazer assim.
Agora, quando fazemos
isso,
geralmente funciona bem aqui, certo? Se eu salvar isso e voltarmos aqui, abra isso e eu clico em add, você vê que
não posso adicionar um objetivo vazio, eu tenho que inserir algo para que isso desapareça.
Agora digamos que em nosso componente de entrada de meta onde estamos buscando entrada do
usuário, onde nós a encaminhamos chamando add goal aqui, nos esquecemos de fazer isso, nós encaminhamos null aqui ou não encaminhamos nada
porque simplesmente esquecemos de adicionar isso aqui. Agora nosso aplicativo começa bem, ele não quebra imediatamente
porque não temos um erro claro em nosso código, não há erro de sintaxe, mas se eu inserir algo aqui e clicar em adicionar, fico indefinido
não é um objeto, avaliando o tamanho do título da meta
e Novamente, esta é uma mensagem de erro que nos ajuda.
Ele nos informa que o problema tem algo a ver com algo sendo indefinido e que está relacionado a essa verificação de
tamanho de título de meta e, em seguida,
você pode mergulhar no local em que acessa o tamanho do título de meta e rastrear o problema.
Então, estamos tendo problemas para obter o tamanho do título da meta porque ele é indefinido como parece. Estamos chegando aqui, então o erro certamente não
está
aqui, mas vamos ao local onde o manipulador de meta de adição é chamado
no final.
Agora, se você lembra, estamos passando isso para o objetivo de adicionar aqui na entrada de meta, então
provavelmente deveríamos ir para a entrada de meta que você também pode fazer mantendo o comando ou
controle e clicando no nome do componente. Bem lá, nós chamamos add goal aqui e oh, aqui vemos o que é o erro. Agora, é claro, neste caso eu construí este
erro aqui, mas você entendeu claramente, este é um erro que você
poderia ter em seu código onde você esqueceu de adicioná-lo, onde você pode mudar a maneira como seu
código funciona e você se esqueceu de ajustar em todos os lugares e, portanto, de repente você
está recebendo esse erro.
Agora, a mensagem de erro nos ajudou a encontrar o problema.