为了关闭JSHint中特定行的linting规则,我们使用以下规则:
/* jshint ignore:start*/
$scope.someVar = ConstructorFunction();
/* jshint ignore:end */
Run Code Online (Sandbox Code Playgroud)
我一直试图找到相当于以上的eslint.
是否可以关闭整个文件的eslint规则?像这样的东西:
// eslint-disable-file no-use-before-define
Run Code Online (Sandbox Code Playgroud)
(类似于eslint-disable-line.)它经常发生在我身上,在某个文件中,我打破了许多地方的特定规则,对于该文件被认为是正常的,但我不想禁用整个项目的规则,我也不想禁用该特定文件的其他规则.
我开始在 WebStorm 2022.2.1 Build #WS-222.3739.57 上使用 Next.js。我创建了一个新的 Next.js 项目并启用了 TypeScript,仅此而已。
错误如下图所示:
TypeError: this.libOptions.parse is not a function
TypeError: this.libOptions.parse is not a function
at ESLint8Plugin.<anonymous> (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:139:64)
at step (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:44:23)
at Object.next (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:25:53)
at C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:19:71
at new Promise (<anonymous>)
at __awaiter (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:15:12)
at ESLint8Plugin.invokeESLint (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:133:16)
at ESLint8Plugin.<anonymous> (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:120:44)
at step (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:44:23)
at Object.next (C:\Program Files\JetBrains\WebStorm 2022.1.2\plugins\JavaScriptLanguage\languageService\eslint\bin\eslint8-plugin.js:25:53)
Process finished with exit code -1
Run Code Online (Sandbox Code Playgroud)
我的Node.js版本是v16.15.1,ESLint版本是8.23.0。
这就是我的 devDependency …
我最近开始看到 TSLint 错误。它们看起来像这样:
不使用为“/Users/myname/myproject/client/src/app/likes/likee/likee.component.ts”找到的本地 TSLint 版本。要从当前工作区启用代码执行,您必须启用工作区库执行。
当我打开它们时,我在我的 .ts 文件中看到它们,它在每个 .ts 页面的第一行显示一条黄色波浪线。
我在TSLint网站上看到它说它已被弃用。
问题 1 - 这些错误的原因是什么,为什么我会突然看到它们?
问题 2 - 我应该卸载 Visual Studio Code TSLint 扩展并安装 ESLint 扩展吗?
我正在使用与Sublime Text 3的eslint,我正在写作gulpfile.js
.
/*eslint-env node*/
var gulp = require('gulp');
gulp.task('default', function(){
console.log('default task');
});
Run Code Online (Sandbox Code Playgroud)
但是eslint一直显示错误:"错误:意外的控制台声明.(无控制台)"
/*eslint-env node*/
var gulp = require('gulp');
/*eslint no-console: 2*/
gulp.task('default', function(){
console.log('default task');
});
Run Code Online (Sandbox Code Playgroud)
也行不通.
我的Sublime Text 3插件:SublimeLinter和SublimeLinter-contrib-eslint.
这是我的.eslintrc.js
档案:
module.exports = {
"rules": {
"no-console":0,
"indent": [
2,
"tab"
],
"quotes": [
2,
"single"
],
"linebreak-style": [
2,
"unix"
],
"semi": [
2,
"always"
]
},
"env": {
"browser": true,
"node": true
},
"extends": "eslint:recommended"
};
Run Code Online (Sandbox Code Playgroud) 我目前正在使用 React、TypeScript、样式组件、 Webpack等设置样板,在尝试运行ESLint时遇到错误:
\n\n\n错误:必须使用 import 来加载 ES 模块
\n
这是错误的更详细版本:
\n/Users/ben/Desktop/development projects/react-boilerplate-styled-context/src/api/api.ts\n 0:0 error Parsing error: Must use import to load ES Module: /Users/ben/Desktop/development projects/react-boilerplate-styled-context/node_modules/eslint/node_modules/eslint-scope/lib/definition.js\nrequire() of ES modules is not supported.\nrequire() of /Users/ben/Desktop/development projects/react-boilerplate-styled-context/node_modules/eslint/node_modules/eslint-scope/lib/definition.js from /Users/ben/Desktop/development projects/react-boilerplate-styled-context/node_modules/babel-eslint/lib/require-from-eslint.js is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules.\nInstead rename definition.js to end in .cjs, …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将ESLint linter与Jest测试框架一起使用.
Jest测试用一些全局变量运行jest
,我需要告诉linter; 但是棘手的是目录结构,使用Jest测试嵌入了__tests__
文件夹中的源代码,因此目录结构类似于:
src
foo
foo.js
__tests__
fooTest.js
bar
bar.js
__tests__
barTest.js
Run Code Online (Sandbox Code Playgroud)
通常情况下,我在单个目录下进行所有测试,我可以在.eslintrc
那里添加一个文件来添加全局...但我当然不想.eslintrc
在每个__test__
目录中添加一个文件.
现在,我刚刚将测试全局变量添加到全局.eslintrc
文件中,但由于这意味着我现在可以jest
在非测试代码中引用,这似乎不是"正确"的解决方案.
有没有办法让eslint基于某些基于目录名称的模式应用规则,或类似的东西?
我正在为全局窗口对象分配一个属性,但是当我运行eslint时,我得到了这个:
"窗口"未定义
我在eslint docs中看到了这个:
以下将window定义为不应触发正在测试的规则的代码的全局变量:
valid: [
{
code: "window.alert()",
globals: [ "window" ]
}
]
Run Code Online (Sandbox Code Playgroud)
我已经尝试将这样的东西添加到package.json文件中以使eslint允许"window"作为全局变量,但我必须做错事.从文档看来,我可能需要在单独的文件中执行类似的操作,但有没有办法在package.json文件中定义一些允许的全局变量?
我从ESLint收到此错误:
error Parsing error: The keyword 'const' is reserved
Run Code Online (Sandbox Code Playgroud)
从这段代码:
const express = require('express');
const app = express();
const _ = require('underscore');
Run Code Online (Sandbox Code Playgroud)
我已经尝试删除node_modules
并重新安装所有npm软件包(如此处所示),但无济于事.
我刚刚从RC更新了Visual Studio 2017到final.
我没有得到以下错误但最近我得到此错误
在构建项目时,我收到以下错误,它阻止Web项目启动:
Severity Code Description Project File Line Suppression State
Error eqeqeq (ESLint) Expected '===' and instead saw '=='. VistaBest.Shop.Web C:\***\Request.js 21
Run Code Online (Sandbox Code Playgroud)
如何在Visual Studio 2017中禁用JavaScript构建错误?
eslint ×10
javascript ×7
node.js ×4
angular ×1
ecmascript-6 ×1
eslintrc ×1
jestjs ×1
jshint ×1
lint ×1
reactjs ×1
sublimetext3 ×1
tslint ×1
webstorm ×1