微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-mvc-4 – 如何在视图页面上缩小脚本块内的JavaScript

如何轻松地在视图页面的脚本块中缩小JavaScript?

我有一些页面特定的脚本,希望放在特定的视图页面上。但ASP.NET MVC4捆绑和缩小仅适用于脚本文件,而不适用于视图页面中的脚本代码

UPDATE

我接受了Sohnee的建议,将脚本解压缩到文件中。但我需要在特定的页面上使用它们,所以我最终做的是:

在布局页面上,我为页面特定的javascript块创建了一个可选部分:

@RenderSection("js",required: false)
</body>

然后在视图页面中,让我们说Index.cshtml,我渲染脚本部分如下:

@section js{    
    @Scripts.Render("~/bundles/js/" + Path.GetFileNameWithoutExtension(this.VirtualPath))
}

如您所见,它假设javascript文件名(index.js)与视图页面名称(index.cshtml)相同。然后在捆绑配置中,我有

var jsFiles = Directory.GetFiles(HttpContext.Current.Server.MapPath("Scripts/Pages"),"*.js");
foreach (var jsFile in jsFiles)
{
    var bundleName = Path.GetFileNameWithoutExtension(jsFile);
    bundles.Add(new ScriptBundle("~/bundles/js/" + bundleName).Include(
    "~/Scripts/pages/" + Path.GetFileName(jsFile)));
}

那么,如果你在索引页面上,HTML输出将是:

<script src="/bundles/js/Index?v=ydlmxiUb9gTRm508o0SaIcc8LJwGpVk-V9iUQwxZGCg1"></script>
</body>

如果您在产品页面上,HTML输出将是:

<script src="/bundles/js/Products?v=ydlmxiUb9gTRm508o0SaIcc8LJwGpVk-V9iUQwxZGCg1"></script>
</body>

解决方法

以最小的努力完成此操作的方法是将其提取到脚本文件中。然后您可以根据需要使用捆绑和缩小。

如果你想将其内联缩小,那么只需将脚本移到页外即可。

原文地址:https://www.jb51.cc/aspnet/252021.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐