2017-01-25 4 views
15

내 React 프로젝트를 linting하기 위해 airbnb 확장자를 사용하고 있습니다. 이제 내 index.js에서 내가 가진 :문서에 대한 linter 오류 no-undef 해결

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

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

린터가 말한다 :

no-undef 'document' is not defined.at line 8 col 3 

가 어떻게이 문제를 해결할 수 있습니까?

답변

47

여러 가지 방법으로이를 해결할 수 있습니다. 두 가지 주요 방법은 documentglobal으로 지정하거나 eslint-envbrowser (아마도 원하는 것)으로 설정하는 것입니다. CLI에서 실행할 때 1) 파일에서, 2) 구성에서 또는 3)이 작업을 수행 할 수 있습니다.

/* global document */ 
import React from 'react'; 
import ReactDOM from 'react-dom'; 
import App from './App'; 

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

/* eslint-env browser */ 
import React from 'react'; 
import ReactDOM from 'react-dom'; 
import App from './App'; 

ReactDOM.render(
    <App />, 
    document.getElementById('root'), 
); 
  • 파일 자체가 글로벌로 추가

    1. 이 파일에 browser로 환경을 설정하십시오에서 파일

      1)

    2) eslint co nfiguration : CLI에서)

    { 
        "globals": { 
        "document": false 
        } 
    } 
    
  • 3 :

    { 
        "env": { 
        "browser": true, 
        "node": true 
        } 
    } 
    
  • 구성에 글로벌로 추가

    1. 구성에 browser로 환경을 설정합니다 :

      1. 사용 ENV : eslint --env browser,node file.js

      2. 사용하여 전역 : eslint --global document file.js

      자료 :
      Specifying Globals with ESLint
      Specifying Environments with ESLint
      Specifying env with ESLint CLI
      Specifying globals with ESLint CLI

  • +0

    매우 CLE ar 명령. 감사. – Viraths