4

我在“用于 ASP.NET 开发人员的 jQuery”中读到:在 VS 中为 jQuery 获得 Intellisense 支持:“....用于 jQuery 的 VSDoc 文件...VSDoc 文件...使用与您的 JavaScript 文件相同的名称-vsdoc 插入到.js 文件扩展名之前,比如我的jQuery 文件叫jQuery-1.3.2.js,那么vsdoc 文件就叫jQuery-1.3.2-vsdocjs。VSDoc 文件必须存在于同一个文件中目录作为您的 jQuery 文件,以便 VS 可以找到它。”

这是否意味着对 jQuery 文件使用 CDN 会阻止 Intellisense 工作?

4

1 回答 1

5

您可以使用 CDN,并且在 Visual Studio 中仍然具有 Intellisense 支持。有两种方法可以做到这一点:

  1. *vsdoc.js添加对托管在 CDN 上的文件的 Intellisense 引用。前往Tools | Options

    选项对话框

    请注意,您需要为每个 *vsdoc.js要使用的条目创建一个条目。

  2. 如果您知道该*vsdoc.js文件与 CDN 上的文件位于同一目录中js(就像在 ASP.NET CDN 上一样),并且您正在使用 MVC,则可以更新您的_references.js文件以反映这一点:

/// <reference path="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.0.js" />

如果您需要 _references.js 方面的帮助,请在此处查看我的博客条目。

请务必更新您的网页(或 _Layout.cshtml)引用以实际使用 CDN。请注意,js您用于网页的路径不必与您的 Intellisense 引用相同(当然,您显然希望它们是相同的版本)!

<!DOCTYPE html>

<html>
<head>
    <title>@ViewBag.Title</title>
</head>
<body>
    <div id="body">
        @RenderBody()
    </div>
    <script src="@Url.Content("http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.js")" type="text/javascript"></script>
    @RenderSection("scripts")
</body>
</html>

注意:上面的示例假定您没有使用 ASP.NET 4.5 捆绑,或利用路径镜像和反向代理等 CDN 功能。我假设如果您使用这些功能,您知道需要做什么才能让它们运行。

于 2013-06-20T20:13:53.683 回答