以下JS:
(function() {
"use strict";
$("#target").click(function(){
console.log("clicked");
});
}());
收益率:
test.js: line 5, col 3, '$' is not defined.
当使用JSHint 0.5.5检测时。什么好主意吗?
以下JS:
(function() {
"use strict";
$("#target").click(function(){
console.log("clicked");
});
}());
收益率:
test.js: line 5, col 3, '$' is not defined.
当使用JSHint 0.5.5检测时。什么好主意吗?
当前回答
如果你正在使用一个相对较新的JSHint版本,通常首选的方法是在你的项目的根目录下创建一个.jshintrc文件,并将以下配置放在其中:
{
"globals": {
"$": false
}
}
这向JSHint声明$是一个全局变量,false表示它不应该被覆盖。
.jshintrc文件在真正旧的JSHint版本中不受支持(例如v0.5.5,就像2012年的原始问题一样)。如果你不能或不想使用.jshintrc文件,你可以在脚本文件的顶部添加这个:
/*globals $:false */
还有一个简写“jquery”jshint选项,在jshint选项页面上可以看到。
其他回答
要修复使用在线JSHint实现时的此错误:
点击“CONFIGURE”(页面中栏顶部) 启用“jQuery”(在底部的“假设”部分下)
还可以在.jshintrc中添加两行
"globals": {
"$": false,
"jQuery": false
}
这告诉jshint有两个全局变量。
你所需要做的就是在.jshintrc中设置"jquery": true。
根据JSHint选项引用:
jquery 这个选项定义了由jQuery JavaScript库公开的全局变量。
如果你正在使用一个相对较新的JSHint版本,通常首选的方法是在你的项目的根目录下创建一个.jshintrc文件,并将以下配置放在其中:
{
"globals": {
"$": false
}
}
这向JSHint声明$是一个全局变量,false表示它不应该被覆盖。
.jshintrc文件在真正旧的JSHint版本中不受支持(例如v0.5.5,就像2012年的原始问题一样)。如果你不能或不想使用.jshintrc文件,你可以在脚本文件的顶部添加这个:
/*globals $:false */
还有一个简写“jquery”jshint选项,在jshint选项页面上可以看到。
你可能想做以下事情,
const $ = window.$
避免它抛出linting错误。