草庐IT

javascript - 使用 Gulp 抑制 JSHint 中的分号警告

我目前在我的Gulp工作流中使用JSHint,并希望在使用JavaScript时抑制分号错误。我目前正在使用gulp-jshint。我如何在Gulp中启用“asi”标志来消除错误?我收到的错误类型是:~/bootstrap-4.0.0-alpha/js/src/modal.js:line1,col26,Missingsemicolon.尽管它是有效的JavaScript。任何帮助,将不胜感激!如果有帮助,这是我的Gulp文件://LoadNodeModules/Pluginsvargulp=require('gulp');varconcat=require('gulp-concat')

javascript - JSHint 无法识别 Visual Studio Code (VSCode) 中的 Async/Await 语法

我一直在努力使用VSCode和JSHint来寻找摆脱这种语法高亮显示的方法。似乎JSHint无法识别Async/Await语法。在这里您可以找到我正在谈论的内容的屏幕截图。我的JSHint版本:jshint-esnextv2.7.0-3 最佳答案 在visualstudiocode中,JSHint和ESLint相互抵消。所以如果你想在vscode中使用异步函数,那么你必须禁用Jshint并启用eslint。 关于javascript-JSHint无法识别VisualStudioCode(

javascript - 我怎样才能减少圈复杂度?

每当我对正在处理的一段代码进行lint时,我都会得到Thisfunction'scyclomaticcomplexityistoohigh。(7)。但是我对如何以这种方式重写它以使其起作用感到有点困惑。这将是不断抛出该消息的函数:function(){varduration=+newDate()-start.time,isPastHalf=Number(duration)20||Math.abs(delta.x)>viewport/2,direction=delta.xviewport/2&&pulled===true){this.close();return;}this.open()

javascript - 如何使用 JSHint 禁用有关 'this' 和严格模式的警告?

我正在使用AngularJS(v1.5)编写一个网络应用程序,所以我有一些Controller,在这些Controller中我经常声明如下内容:functionmyController($someDirectives,...){varctrl=this;//Mycode}问题是当我对我的代码进行JSHint时,我收到了针对我在Controller中声明的所有“this”的警告消息:Ifastrictmodefunctionisexecutedusingfunctioninvocation,its'this'valuewillbeundefined.我必须明确指出,在我的.jshintr

javascript - 你如何一起使用 JSHint 和 Browserify?

我正在尝试使用Angular和Browserify构建一个项目。我的controllers.js文件看起来像这样...'usestrict';module.exports.testController=function($scope){$scope.message='Controller1';console.log('hello');};如您所料,这会产生三个linting错误。使用Strict的函数形式'模块'未定义'控制台'未定义我确实找到了一些解决方案here通过将jslintnode:true放在文件顶部,使JSHint能够处理Node.js文件/*jslintnode:tru

javascript - 箭头函数语法 (=> )' is only available in ES6 (use ' esversion : 6')

目前我正在使用Protractor/grunt运行我的测试,但我收到以下错误消息:'arrowfunctionsyntax(=>)'isonlyavailableinES6(use'esversion:6').我认为我的.jshintrc文件没有被读取,因为我添加了这个条件。.jshintrc{"esversion":6}Gruntfile.jsjshint:{all:["tests/API/**/*.js"],options:{undef:true,mocha:true,node:true,jshintrc:true,esversion:6,globals:{require:true

javascript - 以脚本为目标的 URL 有什么问题?

我正在使用JSHint,但出现以下错误:ScriptURL.我注意到这是因为在这一行中有一个包含javascript:...URL的字符串。我知道JSHint提示说因为设置了scripturl选项,而且由于我的代码库非常大,所以我现在必须取消设置。仍然,我不明白使用脚本URL有什么问题? 最佳答案 javascript:URL是“evalisevil”的一部分。为了执行javascript:URL,浏览器必须启动JS解析器并解析URL的文本。这是一个缓慢且昂贵的过程。此外,组装javascript:URL(或其他包含源代码的字符串)

javascript - JSHint 为 $ 的重新分配给出 'Read Only' 错误

我正在使用node-jshint命令行检查我所有的JS文件。我正在通过以下方式重新分配$:$=someWindowObj.document.id;它给我错误“只读”。我正在使用Mootools,所以我将选项mootools设置为true。当我通过/*jshintmootools:false*/在文件本身中关闭该选项时,我仍然收到错误消息。禁用mootools(或jquery)选项不应该也禁用错误吗?当我从~/.jshintrc和JS文件中完全删除mootools选项时,不会报告错误。我不确定这是一个错误还是预期的行为,所以我想我在提交错误之前把它放在了SO上。

javascript - 为什么 jshint 提示表达式中的换行符?

当将以下代码传递给jshint时,它认为if条件中的换行符是错误的,并显示“Badlinebreakingbefore'&&'。”if(1==1&&true){console.log("helloworld");}但是,在'&&'之后有换行符是可以的。if(1==1&&true){console.log("helloworld");}为什么jshint认为前者是错的而后者是对的? 最佳答案 根据adiscussiononGitHub:Thismaycauseproblemslikesemicoloninsertionandoldja

javascript - JSHint 考虑一个 for-in 变量 'bad' 。这是什么意思?

以下代码:varthings={'foo':'bar'}for(thinginthings){console.log(thing)}在jshint中始终产生以下错误:Badforinvariable'thing'.我不明白是什么让“事物”变量变得“糟糕”——如您所见,它没有在其他任何地方使用。我应该怎么做才能让jshint不认为这是一个错误? 最佳答案 它们总是——如果它们没有被声明的话。如果之前未声明thing,请尝试添加var。for(varthinginthings){console.log(thing)}或varthing;