Express:从Jade文件中找不到$

时间:2014-11-30 09:57:24

标签: javascript jquery node.js express jshint

我正在使用Express框架和Jade创建Web应用程序。

在我的一个Javascript文件中,找不到$。但我在Jade文件中使用了脚本标记来包含jQuery。 jQuery也安装在我的node_modules文件夹中。

这是我的Jade文件:

extends layout

block content
    script(src='/javascripts/vendor/jquery.min.js')
    script(src='/javascripts/vendor/jquery.validate.min.js')
    script(src='/javascripts/validate.js')
    .....

这是我的JavaScript文件(validate.js):

$(document).ready( function() {

    $('#signupForm').validate({
    ....
    });

});

我从JSHint收到以下错误:

 public/javascripts/validate.js
  1 |$(document).ready( function() {
     ^ '$' is not defined.
  3 |    $('#signupForm').validate({
         ^ '$' is not defined.

1 个答案:

答案 0 :(得分:2)

您应该按配置定义全局变量,或jshint会尝试将$视为局部变量。

你没有$局部变量。

您可以在文件

中撰写评论
/*global $:false */

或创建.jshintrc以避免此问题。

"globals": {
    "$": false,
    "jQuery": false
}