2017-01-25 7 views
15

私はReact Projectを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

これを解決するにはいくつかの方法があります。 2つの重要な方法は、documentglobalと指定するか、またはeslint-envbrowser(おそらく必要なもの)に設定することです。これは、1)ファイル内、2)構成内、または3)CLIから実行中に行うことができます。

/* 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:

    { 
        "env": { 
        "browser": true, 
        "node": true 
        } 
    } 
    
  • は、コンフィギュレーションのグローバルとして、それを追加します:CLIから

    { 
        "globals": { 
        "document": false 
        } 
    } 
    
  • 3)の構成に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

    関連する問題