I am using airbnb
extension for linting my React Project. Now, in my index.js
I have:
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App'; ReactDOM.render( <App />, document.getElementById('root'), );
linter says:
no-undef 'document' is not defined.at line 8 col 3
How can I solve this problem?
You can disable ESLint for a given line using a // eslint-disable-line comment. For example, the below code would cause ESLint to complain because of the no-use-before-define rule if you remove the eslint-disable-line comment. A eslint-disable-line comment disables all ESLint rules for a given line.
js error "X is not defined react/jsx-no-undef" occurs when we forget to import a function, class or a variable in our code before using it. To solve the error, make sure to import the value before using it in your code, e.g. import {myFunc} from 'my-package' . Copied!
There are a number of ways to solve/get around this. The two key ways are to either specify document
as global
or to set the eslint-env
as browser
(what you probably want). You can do this 1) in-file, 2) in the configuration, or even 3) when running from the CLI.
1) In-file:
Set the environment as browser
in your file:
/* eslint-env browser */ import React from 'react'; import ReactDOM from 'react-dom'; import App from './App'; ReactDOM.render( <App />, document.getElementById('root'), );
Add it as a global in the file itself:
/* global document */ import React from 'react'; import ReactDOM from 'react-dom'; import App from './App'; ReactDOM.render( <App />, document.getElementById('root'), );
2) In the eslint configuration:
Set the environment as browser
in the configuration:
{ "env": { "browser": true, "node": true } }
Add it as a global in the configuration:
{ "globals": { "document": false } }
3) From the CLI:
Using env: eslint --env browser,node file.js
Using globals: eslint --global document file.js
Resources:
Specifying Globals with ESLint
Specifying Environments with ESLint
Specifying env with ESLint CLI
Specifying globals with ESLint CLI
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With