Como resolver o erro ESLint Parsing error: Unexpected token
Neste artigo você aprenderá a como solucionar o erro ESLint Parsing error: Unexpected token, um problema bem comum de React JS

Fala programador(a), beleza? Bora aprender mais sobre os erros do React JS!
Desenvolvedores que utilizam o ESLint para melhorar a qualidade do código frequentemente se deparam com erros de parsing, como o famoso “ESLint Parsing error: Unexpected token”.
Este erro pode ser particularmente frustrante, pois muitas vezes a causa não é clara à primeira vista.
Neste artigo, vamos explorar algumas das causas comuns desse erro e como resolvê-las, especialmente no contexto de projetos React JS.
O que é ESLint e por que esse erro ocorre?
O que é ESLint?
O ESLint é uma ferramenta de linting para JavaScript, muito utilizada para identificar e corrigir problemas no código.
Ele se integra bem com diversos editores de código e pode ser personalizado para seguir as regras de estilo de código de sua equipe.
Por que o Erro de Parsing Acontece?
O erro “Parsing error: Unexpected token” geralmente ocorre quando o ESLint não consegue entender uma parte específica do seu código.
Isso pode ser devido a várias razões, incluindo mas não limitado a:
- Sintaxe inválida ou desconhecida
- Configurações erradas no arquivo
.eslintrc - Incompatibilidade com a versão do ECMAScript (JavaScript) utilizada
Solucionando o Erro em Projetos React JS
Vamos focar em como resolver esse erro em projetos React JS. É comum esse problema surgir quando estamos usando recursos mais modernos do JavaScript ou sintaxe JSX.
Atualize sua Configuração ESLint
Uma das primeiras coisas a verificar é se seu arquivo de configuração ESLint (geralmente .eslintrc ou .eslintrc.js) está configurado corretamente.
Para projetos React, certifique-se de que você está estendendo a configuração do React:
{
"extends": ["react-app", "plugin:react/recommended"],
"parser": "babel-eslint",
"parserOptions": {
"ecmaVersion": 2021,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
}
}
Instale ou Atualize Dependências
Às vezes, o erro pode ser resolvido simplesmente atualizando as dependências do ESLint e dos plugins relacionados.
npm update eslint babel-eslint eslint-plugin-react
Verifique seu Código
Examine o código onde o erro está sendo apontado. Vamos usar um componente funcional React como exemplo:
function MeuComponente() {
const [estado, setEstado] = useState(null);
return (
<div>
{estado?.nome ?? "Nome não disponível"}
</div>
)
}
Neste exemplo, estamos usando o operador de encadeamento opcional (?.) e o operador de coalescência nula (??), ambos recursos mais novos do JavaScript.
Se o ESLint estiver configurado para uma versão mais antiga do ECMAScript, isso poderia causar o erro “Parsing error: Unexpected token”.
Para resolver isso, certifique-se de que a propriedade ecmaVersion em seu arquivo .eslintrc esteja atualizada.
"parserOptions": {
"ecmaVersion": 2021
}
Quer aprender mais sobre programação? Conheça nosso canal no YouTube:
Conclusão
Chegamos ao fim do artigo sobre como resolver o erro ESLint Parsing error: Unexpected token!
O erro “ESLint Parsing error: Unexpected token” pode ser um obstáculo no desenvolvimento, mas geralmente é um problema fácil de resolver.
O importante é identificar se o erro vem de uma sintaxe desconhecida, uma configuração ESLint incorreta ou uma dependência desatualizada.
Ao seguir as melhores práticas e manter suas configurações e dependências atualizadas, você pode minimizar a ocorrência desse erro e manter seu fluxo de desenvolvimento tranquilo e eficiente.
Está buscando em evoluir como Programador? Confira o nossos cursos de programação.
Bloco curto focado no caso exato do símbolo de menor. Texto sugerido:
Tem um caso que confunde bastante: o erro apontando pro caractere < (o sinal de menor)
Esse < quase sempre é o começo de uma tag JSX, tipo <div> ou <MeuComponente />
Quando o ESLint reclama justo dele, o recado é claro: o parser não tá entendendo que ali existe JSX
Ou seja, ele leu seu return, bateu no primeiro < e travou, porque acha que aquilo é JavaScript comum
A raiz costuma ser uma de duas: o parser não tá preparado pra JSX, ou a flag de JSX não foi ligada nas opções
Na configuração que mostramos ali em cima, repare em duas coisas: o parser apontado pro Babel e o ecmaFeatures com jsx habilitado
É esse par que faz o ESLint aceitar a sintaxe de JSX sem cuspir o Unexpected token <
Se você copiou a config e mesmo assim continua, confira se o arquivo que dá erro é realmente um arquivo de componente (e não um .js solto sem JSX previsto na config)
Três perguntas curtas em formato pergunta+resposta:
O que significa o < no Unexpected token < ? É o começo de uma tag JSX que o ESLint não reconheceu. O parser leu o código como JavaScript puro e parou no primeiro sinal de menor. A saída é garantir parser e flag de JSX na config
Por que o erro aparece só em alguns arquivos? Geralmente porque a config de JSX não alcança aquele arquivo, ou porque ele usa uma sintaxe mais nova que a versão de ECMAScript definida não cobre
Mudei a config e o erro continua, e agora? Vale reiniciar o editor pra ele reler a configuração, conferir se o .eslintrc que você editou é o que está valendo no projeto e revisar se as dependências do ESLint estão atualizadas
Leia também
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares

As diferenças de var, let e const

Como fazer redirecionamento com PHP
Neste artigo você vai aprender a como fazer redirecionamento com PHP, utilizaremos abordagens fáceis de entender e de aplicar Fala programador(a), beleza? Bora aprender mais […]

ChatGPT: o que é, como usar, dicas e como acessar login
ChatGPT é uma ferramenta de processamento de linguagem natural (NLP) baseada na arquitetura GPT-3.5, desenvolvida pela OpenAI. Sua criação representa um marco significativo no campo […]
