JScript 智能提示(IntelliSense)是 Visual Studio 2008 的一个重要新特性,尤其是现在 Visual Studio 2008 还提供了 jQuery 智能提示的官方支持。遗憾的是在实际应用中经常遇到如图所示的错误提示,并且出现这样的错误以后,包括jQuery在内的智能提示统统失效。非常让人恼火。我最开始的时候仅从提示“Error updating JScript IntelliSense”猜测以为是VS把智能提示缓存起来,然后缓存文件出错。后来尝试过很多方式都无法解决。
后来偶然看到 jeffrey 写的 日志,才知道原来是由于加载的额外js文件缺乏智能提示文件(vsdoc.js)导致的。
jeffrey 有一个非常简单易行的解决建议,就是创建一个和出错文件对应的 –vsdoc.js 文件放到该文件相同的目录下。比如 ASP.NET MVC 里默认就为jQuery.min.js 提供一个 jQuery.min-vsdoc.js 文件, 同样的道理,如果我们在 Scripts 目录下有一个 myScript.js 文件, 那么我们只需要创建一个空的 myScript-vsdoc.js 文件放到 Scripts 目录下,就可以避免因为加载 myScript.js 文件导致的 JS 智能提示失效问题。
当然了,这只是权益之计,不过很有效,因为我们在编写js的时候,增加的js文件往往是自己写的脚本,也就无所谓有没有智能提示了,如果你真的需要智能提示,那么不妨写一个。
由这个问题引发出来一个问题,就是对于在网上发布共享JS库的人,是不是应该考虑完善你的作品,提供对应的 “-vsdoc.js” 文件呢?
原文链接:http://wukangrui.net/2009/04/30/solution-for-js-intellisense-error.html