2017-02-21 46 views
6

Oluşturma-tepki uygulaması ile bir React uygulaması yapıyorum.hatası 'document' tanımlanmadı: eslint/React

Eslint çalıştırırken şu hatayı alıyorum: 8: 3 'document' hatası no-undef tanımlanmamış.

Aşağıdaki .jsx dosyası ve eslint yapılandırmam. Uygulamam hatasız çalışıyor, ancak 2 dosyada bu eslint hatasını aldım.

index.jsx:

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import App from './App'; 
import './index.css'; 

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

eslintrc.js:

module.exports = { 
    "extends": "airbnb", 
    "plugins": [ 
     "react", 
     "jsx-a11y", 
     "import" 
    ], 
    "env": { 
    "jest": true 
    } 
}; 

Bunu nasıl düzeltebilirim? Şu an için iki dosyayı da görmezden geleceğim ... ama uzun vadeli bir çözüm bulmayı tercih ederim.

cevap

12

fazla bilgi için ESLint environment documentation bakınız (belgede, pencerenin vb gibi) küresel değişkenleri içerecek şekilde "browser": true senin env ekleyin. aşağıdaki gibi senin package.json yılında

1

, "jsdom" olarak jest için test ortamı belirtin:

"jest": { 
    "testEnvironment": "jsdom" 
    } 

Ben aynı sorunu karşılaştığı ve bu benim için iyi çalıştı.

+0

Bunun neden Google'da en iyi sonuç olmadığı hakkında bir ipucu yok. Bu kesinlikle çözüm. Facebook tepki test komut dosyasının ne yaptığını anlayamadım -env = jsdom komut satırı argümanı – Steve

+0

@Steve Destek için teşekkürler. Memnun size yardımcı oldu! –