添加// eslint-disable-next-line react-hooks/exhaustive-deps我的代码后,我收到以下 eslint 错误。
8:14 未找到规则“react-hooks/exhaustive-deps”的错误定义
我参考了这篇文章来解决这个问题,但提到的解决方案在我的情况下不起作用。任何线索如何抑制这个eslint错误?
PS我结合使用standardjs。
什么版本的标准?
12.0.1
什么操作系统、Node.js 和 npm 版本?
Windows 10、节点 v10.15.1、NPM v.6.8.0
您预计会发生什么?
standard --parser babel-eslint 究竟发生了什么?
我在 devDependencies 上(本地)安装了标准版和 babel-eslint。
我运行标准 --parser babel-eslint
我收到错误:找不到模块“babel-eslint”
我从以前的问题85 1167中读到,当它们安装在同一层时应该修复。但它不会发生在我身上。
我尝试将以下配置放在 package.json 上:
"standard": {
"parser": "babel-eslint"
}
Run Code Online (Sandbox Code Playgroud)
但这并不能解决问题。
如标题所述,eslint是否有可能在所有规则上显示警告而不是错误?如果该信息相关,我正在使用Standard JS。
谢谢!
在我的 TypeScript 项目中,我使用节点模块“typescript”和“ts-standard”。作为 IDE,我使用带有“StandardJS - JavaScript 标准样式”扩展的 Visual Studio Code。在其设置中,“引擎”设置为“ts-standard”。
要禁用某一行的某个 ESLint 规则,我可以在/* eslint-disable-next-line padded-blocks */该行的正上方写入。
要禁用一个文件的某个 ESLint 规则,我可以/* eslint-disable padded-blocks */在文件顶部写入。
如何为整个项目/包/工作空间禁用某个 ESLint 规则?
我在多个 JavaScript 项目上进行合作。其中一些使用eslint,另一些使用standard。这是由不同且不相关的团队维护的项目,因此强迫他们使用相同的 linter 不是一个选择。
我使用 Sublime Text 3,似乎当我安装 SublimeLinter 插件,加上 SublimeLinter-contrib-standard 和 SublimeLinter-eslint 时,它们最终都会处于活动状态,因此不清楚何时在编辑器中突出显示错误,是哪个 linter 生成的它。
为了增加混乱,SublimeLinter-contrib-standard 提供了一个“保存格式”选项,该选项在保存文件时应用标准格式,例如删除所有分号。但对于依赖 eslint 并应用一组不同的 linter 规则的项目不应该这样做,例如它们可能确实使用分号。
那么,如何配置我的开发环境才能使用项目依赖的任何 linter?
我试过了:
如何为同一种语言(javascript)的每个项目启用不同的 linter?我想这一定是一个非常常见的用例,特别是对于在不同开源项目中协作的人们来说,这些项目可能遵循不同的编码标准。
我正在考虑切换到另一个可以更好地处理这个问题的编辑器。也许https://code.visualstudio.com/?如果有人对此有评论或其他编辑更好地处理这个问题,我也将不胜感激。
谢谢!
StandardJS的主要功能之一是它不需要配置。
问题是我要配置它。我不想放:
/* eslint-env mocha */
Run Code Online (Sandbox Code Playgroud)
...在每个测试文件中。我想配置StandardJS以将测试目录中的所有内容都视为摩卡测试。
我在自述文件中发现可以进行某些配置,例如:
{
"standard": {
"globals": [ "myVar1", "myVar2" ]
}
}
Run Code Online (Sandbox Code Playgroud)
...但是我正在努力寻找有关配置选项的更全面的文档。是否可以配置StandardJS以不同方式对待不同目录中的文件?
如何创建使用 ESLint + StandardJS + Prettier 的 Vue 2 项目?
StandardJS 的规则自然应该优先于 Prettier 的规则。
vue create 仅提供以下选项:
我尝试了两件事:
我当然希望在项目配置级别而不是 IDE 级别进行设置。
我正在尝试使用 StandardJS 来帮助处理我的 linting(也是因为我的主管要求我这样做)。它在很大程度上工作得很好。但是,今天我开始收到我以前从未见过的错误,报告说:
Closing curly brace does not appear on the same line as the subsequent block. (brace-style)
standard(brace-style)
Run Code Online (Sandbox Code Playgroud)
这是导致错误的代码:
if (err.status === 'not found') {
cb({ statusCode: 404 })
return
}
else { // THIS LINE causes the error
cb({ statusCode: 500 })
return
}
Run Code Online (Sandbox Code Playgroud)
为什么我会收到此错误,我该如何预防?
注意,我在这个项目中使用的是 StandardJS 8.6.0。该错误是由标准在项目编译中产生的,在安装了 StandardJS 扩展的 VS Code IDE 中。(是的,我真的确保我所有的其他花括号都在正确的位置!)
standardjs ×8
eslint ×6
javascript ×3
eslintrc ×2
lint ×2
reactjs ×2
node.js ×1
prettier ×1
react-hooks ×1
react-native ×1
standards ×1
sublimetext ×1
sublimetext3 ×1
typescript ×1
vue.js ×1
vuejs2 ×1