在jquery-1.3.2.js和jquery-1.3.2.min.js之间切换

J.W*_*.W. 12 asp.net-mvc jquery

当我开发应用程序时,我想使用jquery-1.3.2.js,当我部署它时,我想使用jquery-1.3.2.min.js?

在没有手动注释和取消注释之间切换两者的最佳方法是什么.

谢谢.

Cha*_*ino 8

我有一个HtmlHelper扩展方法来加载我的JavaScript文件.它看起来像这样......

public static string JavascriptTag(this HtmlHelper html, string javascriptName)
{
    var format = "<script src=\"/Content/Scripts/{0}.js\" type=\"text/javascript\"></script>\r\n";

#if (!DEBUG)
    javascriptName += ".min";
#endif

    return string.Format(format, javascriptName);
}
Run Code Online (Sandbox Code Playgroud)

这简称为:

<%= Html.JavascriptTag("jquery-1.3.2") %>
<%= Html.JavascriptTag("general") %>
Run Code Online (Sandbox Code Playgroud)

我可以使用这个约定,因为我还有一个构建任务,它将所有JS文件放在我的内容/脚本目录中,缩小它们然后将.min插入到文件名中.

如果你没有那种奢侈品,你可以使用这样的变化:

public static string JavascriptTag(this HtmlHelper html, string devFileName, string liveFileName)
{
    var format = "<script src=\"{0}\" type=\"text/javascript\"></script>\r\n";

    var fileNameToUse = devFileName;
#if (!DEBUG)
    fileNameToUse = liveFileName;
#endif

    return string.Format(format, fileNameToUse );
}
Run Code Online (Sandbox Code Playgroud)

然后可以这样调用:

<%= Html.JavascriptTag("/Content/Scripts/jquery-1.3.2.js", "/Content/Scripts/jquery-1.3.2.min.js") %>
<%= Html.JavascriptTag("/Content/Scripts/general.js", "/Content/Scripts/general.min.js") %>
Run Code Online (Sandbox Code Playgroud)

上述方法的另一个好处是您可以将CDN用于库,例如

<%= Html.JavascriptTag("/Content/Scripts/jquery-1.8.2.js", "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.2.min.js") %>
Run Code Online (Sandbox Code Playgroud)


Sor*_*tis 2

例如,将两个文件命名为 jquery.js,并放入某个文件夹(libs)中。部署时,不要部署 lib 文件夹。