【问题标题】:"fetch" is undefined and "localStorage" is undefined , on using eslint-config-airbnb in react.js在 react.js 中使用 eslint-config-airbnb 时,“fetch”未定义,“localStorage”未定义
【发布时间】:2018-08-21 08:35:35
【问题描述】:

我想用airbnb的eslint修改我的代码结构。我已按照eslint-config-airbnb 中给出的这些说明进行操作。启动命令后 npm run lint,结果由'fetch' is not defined'localStorage' is not defined 组成。

我已经完成了这个github issue,但错误仍然显示为相同的'fetch is not defined'。是否有任何解决方案。

【问题讨论】:

  • 请编辑您的问题并向我们展示您的 eslint 配置文件

标签: reactjs eslint-config-airbnb


【解决方案1】:

无需将其添加为例外,只需将其添加到您的.eslintrceslint 就会知道它是什么:

  "env": {
    "browser": true
  }

【讨论】:

  • 我已经设置了这个,但localStorage 仍然无法识别。
  • 有效!你是对的,不需要添加它作为例外?
  • 添加 browser: true 会导致其他错误,例如无法识别 Node.js 细节,即 process.env
【解决方案2】:

您可以使用globals 配置您的.eslintrc 文件。

将此添加到您的 .eslintrc 文件中。

"globals": {
        "localStorage": true,
        "fetch": true
    }

【讨论】:

  • gr8,愉快的 linting!如果你生气或者你有很多全局变量在使用。然后放。 "no-undef": 0 在 .eslintrc 文件的 rules 标签内。
【解决方案3】:

您可以尝试通过window 对象访问fetchlocalStorage

window.fetch, window.localStorage

【讨论】:

  • 当试图遵守 lint 规则而不需要修改配置时,这可以作为一种解决方案。如果您使用 StandardJS 之类的工具,就会出现这种情况:standardjs.com
  • 'localStorage' 未定义。 (no-undef) 标准(no-undef) 这正是我试图补救的。谢谢!
猜你喜欢
  • 2021-07-02
  • 1970-01-01
  • 2018-02-12
  • 1970-01-01
  • 2018-02-14
  • 2021-03-18
  • 2021-07-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多