我正在尝试编写更好的Javascript / JQuery代码,并使用我的Grunt设置JSHint。
现在我已经通过了我的代码,它似乎没问题,没有使用'严格'。我已将我的代码拆分为许多文件,管理部分,lib部分(对于我的JQuery,Backbone)等。
所以我试图在我的一个文件的顶部添加'use strict'。
现在JSHint说AJAX调用的成功部分中的函数没有定义?现在我在本节中调用的函数在其他文件中,但在我的Grunt设置中构建了javascript文件,因此函数文件位于顶部,就在我的所有库文件的下方。
所以我的AJAX功能如下:
$.ajax({
url: "/getusers/"+SelectedSort,
type: "GET",
dataType: "html",
success: function(data) {
EvenOddRows(".Row"); <- function in question!
},
error: function(fail) {
console.log(fail);
}
});
所以在我的函数文件中我构建了这样的函数,
var EvenOddRows = function (RowToColour) {
$(RowToColour + ":even").addClass("EvenNumber");
$(RowToColour + ":odd").addClass("OddNumber");
};
它只是一个简单的功能,颜色偶数/奇数行与荧光笔类。
这一切都有效,但是“使用严格”它表示我没有定义EvenOddRow
函数。
所以我在拜访我没有与函数范围有关,或者只是因为函数是在AJAX函数中?当我添加window.EvenOddRows
时,JSHint就像现在的问题一样。
那么最好的方法是什么?
如果有任何我没有发布的代码,有人需要查看,请告诉我,我会发布。
*请注意我不是诵读困难,所以我可能没有正确的解释,如果是这样,请告诉我,我会重新提出我的问题,谢谢您的理解。
谢谢你,