Globais restritos


168

Estou usando o React e o Redux para desenvolver um aplicativo da web e, quando iniciei meu projeto, obtive o seguinte:

Line 13:  Unexpected use of 'location'  no-restricted-globals

Search for the keywords to learn more about each error.

Pesquisei muito sobre como resolvê-lo, mas nenhuma das respostas que encontrei me ajudou, então virei para o estouro de pilha.

Alguém sabe como corrigir esse erro? Agradeço toda a ajuda que posso obter.

Respostas:


406

Tente adicionar windowantes location(ie window.location).


15
Essa deve ser a resposta aceita. O ESLint está informando corretamente que você está escrevendo um código fraco. As outras duas respostas, incluindo a resposta aceita, não resolvem o problema, mas apenas desativam o ESLint.
eMike Wallace

De fato, a maneira correta de corrigir isso é prefixar o local com window.location. Por alguma razão, a equipe do CRA atualmente considera locationum "navegador confuso global". Eu diria que se você estiver usando o CRA e não souber sobre o objeto de localização, estará em um terreno sem ninguém. Talvez eles só querem fazer a leitura url irritante, o que seria compreensível ...
Devin G Rhode

Eu criei uma questão github especificamente perguntando se o locationobjeto realmente é um navegador confundindo global, portanto, a necessidade do window.prefixo em todos os lugares ... github.com/facebook/create-react-app/issues/7733
Devin G Rhode

5

Essa é uma solução simples e talvez não seja a melhor solução, mas funciona.

Na linha acima da linha, você obtém seu erro, cole este:

// eslint-disable-next-line no-restricted-globals


5
Boa solução para um projeto create-react-app ao incluir trabalhadores de serviço como blobs. Votado.
adc

7
Isso não resolve o problema, apenas oculta o aviso.
Vladimir Nul

-2
/* eslint no-restricted-globals:0 */

é outra abordagem alternativa

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.