Javascript捆绑在visual studio 2015上

时间:2014-12-27 04:34:45

标签: asp.net-core visual-studio-2015

Visual Studio 2013 上的

System.Web.Optimization给了我们关于javascript文件的捆绑,其中最好的部分是允许我们使用单个文件或根据需要捆绑它们。它让调试成为一种快乐 现在在 Visual Studio 2015上我们有grunt和Task Runner,允许我捆绑和缩小但是在捆绑的js和原始文件之间切换只是痛苦

是否有人在VS 2015上使用优化捆绑的解决方案

由于

5 个答案:

答案 0 :(得分:11)

[编辑] BundlerMinifier扩展可以作为Visual Studio扩展进行捆绑和缩小,它与GULP,GRUNT或我最喜欢的WebPack相比具有有限的功能,但是如果你想要一个简单的解决方案https://github.com/madskristensen/BundlerMinifier就是那个< /强>

像ecm_dev这样的长话短说,老式优化捆绑将无法使用 这是正确的答案,但它没有帮助我解决我的捆绑和缩小问题,并持续几个月它促使我找到实际存在的替代品 微软推动我们使用的Bower,Gulp,Grunt

我选择Bower作为包经理 Bower是客户端文件上的nuget的替代品(css,js,less等..) 和Gulp作为构建任务op

gulp-bower帮助您提取Bower套餐

main-bower-files在正确的位置提取Bower文件

gulp-concat捆绑您的css或js文件(任何文件)

gulp-uglify缩小你的js文件

gulp-less编译较少的文件

gulp-cssmin缩小您的css文件

gulp-inject将您的css和javascript标记注入您的.html或.cshtml

Gulp实际上比System.Web.Optimization + Web Essential组合能力更强,但还有很多需要学习的地方 这可能不是你想要的答案(当我一个月前第一次问这个问题时,它肯定不是我的)

但如果您正在寻找这个问题,那么您遇到了同样的问题 为了

在VS 2015上启用gulp: http://tom.cabanski.com/2014/11/23/using-gulp-with-asp-net-vnext-and-visual-studio-2015-preview/

gulp 101: http://ilikekillnerds.com/2014/07/how-to-basic-tasks-in-gulp-js/

我喜欢观看视频:https://www.youtube.com/watch?v=dwSLFai8ovQ

这里有另一篇博文:http://mmercan.com/blog/?p=271

答案 1 :(得分:3)

VS2015 for ASP.NET 5.0应用程序将无法使用旧样式优化捆绑:https://github.com/aspnet/Home/issues/134

答案 2 :(得分:1)

在阅读了here提供的文档和示例后,我立即遇到了同样的问题。在捆绑和缩小步骤之后,文档只是说&#34;现在引用文件&#34;。

我做了很多研究,试图找到一种最佳实践,用于有条件地引用开发脚本和其他用于生产的脚本。我最喜欢的选项是:

  1. 使用WireDepgulp-inject替换您的占位符值 使用动态定义的文件引用查看模板。您可以根据环境选择要包含在gulpfile中的不同文件,并有条件地选择是否捆绑。这适用于本地文件,但如果您想使用CDN则不是很好。
  2. 使用环境标记帮助器有条件地定义文件引用。如果要从CDN引用文件,此选项非常有用,并且您可以选择在开发的本地文件和生产的CDN文件之间切换。
  3. WireDep和gulp-inject的文档在各自的链接中提供。

    要使用环境标记帮助程序,请确保_GlobalImport视图文件中包含以下行。

    @addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"
    

    然后像这样使用它:

    <environment names="Development">
        <script src="~/js/script1.js"></script>
        <script src="~/js/script2.js"></script>
        <script src="~/lib/big-script-library.js"></script>
    </environment>
    <environment names="Staging,Production">
        <script src="~/js/bundle/script.min.js"></script>
        <script src="http://www.some-cdn-resource.com/big-script-library.min.js"></script>
    </environment>
    

    环境名称对应于ASP.NET 5环境变量ASPNET_ENV。

答案 3 :(得分:0)

在我抱怨整整一天去Visual Studio 2015移动我的奶酪后,我平静下来,就在前方找到如何以新的方式做到这一点,我现在回到喜欢vs2015:)

如果您已经配置了所有文件,请不要担心不删除我们将使用它的现有配置

  1. 安装Web Essentials for 2115
  2. 选择要捆绑的文件,如果已经配置了文件且太多,只选择一对,我们可以稍后编辑配置
  3. 右键单击并选择&#34; Bundle and Minifier&#34; - &#34;捆绑和缩小文件&#34; (Shift + Alt键-F)
  4. 保存捆绑在您的首选位置(可能与前一个名称不同,因此您不要覆盖它)
  5. 第一个区别是你不会看到yourfile.js.bundle。相反,你的根文件夹中有一个新的bundleconfig.json
  6. 如果您打开文件,您现在可以看到,您的所有捆绑包只能有一个配置文件
  7. 现在您可以从yourfile.bundle复制现有配置,这是XML,没关系
  8. 粘贴到新的bundleconfig.json中,然后删除所有<file> </file>代码
  9. 那就是......你的新配置现已设置

    您可以在此处获得有关新捆绑包的更多信息

    https://visualstudiogallery.msdn.microsoft.com/9ec27da7-e24b-4d56-8064-fd7e88ac1c40
    

答案 4 :(得分:0)

在Web Essentials 2015之前,Bundler和Minifier都包含在核心插件中。 Web Essentials 2015已不再是这种情况,已经分离到自己的插件中(Plugin on Visal Studio Marketplace

另外需要注意的是,转换到新插件时,您可以在项目的根目录中使用bundleconfig.json文件来代替单个.bundle配置文件。