错误 'document' 未定义:eslint / React
error 'document' is not defined : eslint / React
我正在使用 create-react-app 构建一个 React 应用程序。
我在 运行 ESLint 时遇到以下错误:
8:3 error 'document' is not defined no-undef.
我的应用程序运行没有错误,但我在 2 个文件中遇到了这个 ESLint 错误。
查看其中一个 .jsx
文件和我的 ESLint 配置。
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
}
};
我该如何解决这个问题?目前我会简单地忽略这两个文件......但我宁愿找到一个长期的解决方案。
添加 "browser": true
您的 env
以包含全局变量(如文档、window 等)
有关详细信息,请参阅 ESLint environment documentation。
在你的package.json
中指定jest的测试环境为"jsdom"
如下:
"jest": {
"testEnvironment": "jsdom"
}
我遇到了同样的问题,它对我来说效果很好。
在您的 eslint.rc 文件中设置环境 属性,例如
{
"env": {
"browser": true,
"node": true
}
}
如果您有 .eslintrc.json
文件,请添加以下代码段。
{
...otherSettings,
"env": {
"browser": true,
"node": true
}
}
如果您没有 .eslintrc.json
,那么您可以在 package.json
文件中添加这些设置。
{
...otherSettings,
"eslintConfig": {
"globals": {
"window": true
}
}
}
我正在使用 create-react-app 构建一个 React 应用程序。
我在 运行 ESLint 时遇到以下错误:
8:3 error 'document' is not defined no-undef.
我的应用程序运行没有错误,但我在 2 个文件中遇到了这个 ESLint 错误。
查看其中一个 .jsx
文件和我的 ESLint 配置。
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
}
};
我该如何解决这个问题?目前我会简单地忽略这两个文件......但我宁愿找到一个长期的解决方案。
添加 "browser": true
您的 env
以包含全局变量(如文档、window 等)
有关详细信息,请参阅 ESLint environment documentation。
在你的package.json
中指定jest的测试环境为"jsdom"
如下:
"jest": {
"testEnvironment": "jsdom"
}
我遇到了同样的问题,它对我来说效果很好。
在您的 eslint.rc 文件中设置环境 属性,例如
{
"env": {
"browser": true,
"node": true
}
}
如果您有 .eslintrc.json
文件,请添加以下代码段。
{
...otherSettings,
"env": {
"browser": true,
"node": true
}
}
如果您没有 .eslintrc.json
,那么您可以在 package.json
文件中添加这些设置。
{
...otherSettings,
"eslintConfig": {
"globals": {
"window": true
}
}
}