2

我写它使用jQuery和不幸的是,当我创建一个具有以下.js文件中的javascript代码:VS 2010 JavaScript智能工作不

/// <reference path="jquery-1.4.2.js" /> 
(function($) { 

    // use $ here 

})(jQuery); 

我没有得到任何$智能感知。不过,如果我使用“jQuery”,我仍然会感受到智能感知。这似乎是一个监督我,因为Visual Studio中应该认识到,我创建了一个匿名函数,并立即与jQuery执行它的通过。

有没有人有一种变通方法/修复?

回答

1

不幸的是有没有变通方法我所知道的,只是这样做:

(function($) { 
    $ = jQuery; //remove or comment this before it goes to the minifier 
    // use $ here 

})(jQuery); 

我这样做的时候带了这一点$ = jQuery;作为构建的一部分(如果我需要智能感知是严重的文件中)。我希望Visual Studio团队在SP1中修复这个问题,但我还没有看到任何消息说他们还没有。 Check out Michaud's blog here with a few quotes from the VS team on the issue

+0

在构建过程中如何去掉这些? – 2010-11-05 11:29:34

+0

@Tahir - 这完全取决于你的构建过程中,我目前使用扢来缩小我的文件(如他们保存):http://chirpy.codeplex.com/作为发动机的一部分,我删除它们......我希望我的后增强扢以他们的项目在接下来的一周,只要我有时间的大块这么做 – 2010-11-05 11:31:23

+1

只是好奇:它实际上需要被剥离出来的? (我知道这使得参数毫无意义,以保持它在,你可以很容易地做到“无功$ = jQuery的”在封闭代替。) – 2010-11-05 11:39:10